使用 PHP 了解 Apache 上的“408 请求超时”
问题描述 - Apache 日志
我在Apache日志文件中发现了与此类似的项目:
166.147.68.243 [24/Feb/2013:06:06:25 -0500] 19 web-site.com "-" 408 - "-"
我有自定义日志格式,这里代表状态。日志格式为:408
LogFormat "%h %t %D %V \"%r\" %>s %b \"%{User-agent}i\"" detailed
通常,日志文件中的行如下所示
184.73.232.108 [26/Feb/2013:08:38:16 -0500] 30677 www.site.com "GET /api/search... HTTP/1.1" 200 205 "Zend_Http_Client"
这就是为什么408错误线对我来说看起来很奇怪。没有记录任何请求,我不知道应该优化什么。
问题
如何解决这个问题?我应该收集哪些其他信息或日志?可能导致此问题的原因是什么?这是服务器上的问题吗?或者这绝对是网络连接问题?
我正在解决这个问题,因为我们的客户抱怨他的手机上有408错误。我在日志文件中找到了许多记录,但我不得不承认我不知道该怎么办。
我自己的研究
关于这个问题,这里已经有几个问题。但人们要具体得多。就像他们讨论一些特定的客户端软件和脚本的问题一样。在这里,我只是在iPhone上打开某些页面时遇到错误。
例如,在HTTP中,408请求超时,建议在POST之前执行GET请求。如果我有自定义客户端,我可以这样做。但是我无法控制用户浏览器的行为。
猜测 #1
在搜索互联网并思考这个问题时,我发现 https://serverfault.com/questions/383290/too-many-408-error-codes-in-access-log
建议将超时
配置参数更新回其默认值。
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
我首先尝试了值30,因为我认为30秒应该足够了。但即使使用300秒的默认值,我也会继续在日志中获得错误。当我写这篇文章时,我做到了,并在几分钟内得到了超过10行。tail -f
对我来说,这似乎不是一个完整的解决方案。