我的Apache错误日志偶尔会显示错误“脚本头的过早结束”,而且我的站点似乎会在发生时向浏览器返回500个内部服务器错误。奇怪的是,它会发生几分钟,然后一切都会恢复正常。
发布于 2011-03-24 16:31:00
Apache Wiki有一个关于此错误的很好的部分,列出了最常见的原因:无法正确输出header的脚本。听起来,脚本在输出和刷新头之前偶尔会崩溃或超时,这在您看来是“脚本头的过早结束”/500错误。
如果可能的话,尝试在本地测试脚本,以确保它在所有条件下都正确地输出标头。
发布于 2011-03-24 17:12:19
如果您通常使用的是mod_fcgid或mod_fcgid,则可能会将apache的子进程数和/或请求数配置为使用每个快速cgi进程,以及所使用的子进程和/或请求数量之间的不匹配。您是在apache的配置文件中设置快速and环境变量,还是使用包装器脚本设置PHP_FCGI_CHILDREN (必须禁用fcgid)和PHP_FCGI_MAX_REQUESTS?
如果apache的配置和PHP的环境变量设置不匹配,那么如果PHP决定在apache决定之前到达MAX_REQUESTS,PHP将退出,但apache仍然会认为它正在接受请求。
您可以阅读更多有关此以及示例包装脚本和正确的fcgid配置这里的内容。
https://serverfault.com/questions/251418
复制相似问题