所以,对于你们来说有趣的问题,因为我完全失去了做什么,或者在哪里采取下一步。
服务器和应用环境。
CentOS版本5.3(最终版)
Apache 2.2.3-22
EnableSendfile off EnableMMAP off ErrorLog logs/error_log LogLevel debug
PHP-5.2.6-2
error_reporting = E_ALL display_errors = on log_errors = on max_execution_time=300 max_input_time=60 memory_limit=512mb
Kohana 2.3 PHP环境。
HAProxy 1.3.15.6-2
MemCacheD 1.2.6-1
我们的应用程序分为3个Web服务器,一个NFS存储服务器,以及3个Web服务器之间的粘性负载平衡。 应用程序看起来运行的很好,但是每隔一段时间,应用程序就会显示一个纯白页面,而不是加载。 不是404错误,或500服务器错误,一个干净的白页。 它立即返回,所以它不是一个执行时间的错误。
错误日志或服务器错误日志代理日志中没有任何内容显示标准代理连接,只有Access日志中的标准200状态,传输了256个字节。
对我来说,这导致告诉我,应用程序本身有一个问题。 一个罕见的,无法解释的,看似随机的问题,导致了我们现在所说的“死亡白色屏幕”。
我们的开发人员都说,既然没有任何关于我们的错误日志,那一定是服务器问题。 但我说的是同样的事情,没有什么会去我们的日志(无论如何),并没有任何httpd儿童从我能告诉崩溃。
任何关于如何增加我的日志的想法,或者以某种方式certificate它不是PHP,Apache,CentOS等的错误? 或者,如果它是某种错误,找出它?
通过Telnet连接到服务器,看看发生了什么事情
telnet server.whatever 80
GET / HTTP / 1.0
我会尝试在networking数据path的所有点,或者至less在客户端和服务器之间build立一个数据包嗅探器。 然后,您可以在出现错误时检查数据包,并至less将问题隔离到链中的一台机器上。 至less在哪里你应该把重点放在你的调查上。
事实certificate(供参考)我们在Kohana 2.3中发现了一个bug(我不知道具体细节,我不是开发者),他们的文件caching系统。 通过升级到2.3.4,并专门用于caching的memcached,问题就消失了。