Codeigniter 应用程序上的不稳定 500 错误


Erratic 500 error on Codeigniter app

到目前为止,我的 CI 应用程序运行良好。

但是,我注意到当请求更长的SQL查询时(例如在显示大约50篇博客文章的主页上(,存在一个严重的问题。

有时页面加载正常。不可预测的是,当我重新加载同一页面时 - 内容没有变化 - 浏览器一直挂起,直到我返回Apache 500错误。这发生在多个浏览器上。

CI 错误日志不显示任何内容。PHP 错误日志不显示任何内容。

我注意到这不是较小查询(即 20 个帖子(的问题,但不确定它是否与问题有关,毕竟,它确实在某些尝试中下载了 50 个帖子。

我知道这很难详细解释,但如果有人能给我任何关于如何调试的指示,我将不胜感激。很高兴添加任何信息。

该应用程序在 Plesk 9 RHEL 服务器上运行,PHP 5.3.8、MySQL 5.5.17、CI 2.1.0。

PHP 错误日志文件

-rw-rw-r-- 1 apache       apache              0 May 19 10:46 php_errors.log

PHP .ini 信息

error_log   /var/log/php_errors.log /var/log/php_errors.log
log_errors  On                      On

在此处使用 Spark 调试工具栏:http://getsparks.org/packages/Debug-Toolbar/versions/HEAD/show

然后观察您的查询加载时间,查看您的内存等。 慢慢地将你的帖子数量从 20 到 30 到 50 到 100 等,直到发生错误 - 看看是否有东西突出。

我怀疑 PHP 超时正在发生,要么是因为您将超时值配置为低(应该在 230 左右(,要么是因为您的查询编写得很差且效率低下,导致服务器花费太长时间才能返回具有较大查询的结果。