周末我将开发 Web 服务器升级到了 Apache 2.4 和 PHP 5.4。我的 Web 应用程序之前在 Apache 2.2 和 PHP 5.3 上运行良好,但现在 Firefox 中开始出现“连接已重置”的消息。查看屏幕截图。我正在通过本地 LAN 连接到 Linux 机器。
我猜想这可能与 Apache 或 PHP 的新版本有关,或者与我从比特纳米? 似乎每 5-10 个请求就会发生一次并抛出此错误,也许更有可能触发此错误是当我从页面发送 POST 请求时。是脚本超时还是其他原因?这些只是我正在加载的基本动态页面,它们在 Apache 2.2 和 PHP5.3 中运行良好。
以下是我的httpd配置文件和PHP配置文件如果那有任何线索的话。
有什么想法吗?非常感谢您的帮助。
答案1
经过讨论,这听起来像是你使用的 LAMPStack 版本不对(可能是 64 位版本而不是 32 位版本),或者可能是 LAMPStack 所基于的某个库的版本不同,或者你刚刚发现了 LAMPStack 中的一个错误。通过这样的问答网站很难确切地说出它是什么。
从下载页面上的名称“LAMPStack 5.4.0-0 dev”来看,这似乎是 LAMPStack 的开发版本。这通常意味着它可能存在错误,不应在生产中使用。它可能也不适合开发机器,因为您通常希望它与生产设置非常相似。他们的宣布新版本的博客文章提到了这一点。他们还建议使用他们的论坛询问您对此有任何疑问,如果您打算继续使用新版本,我建议您现在就解决这些 SegFault 问题。
如果您只是想重新开发您的应用程序,我建议降级回 LAMPStack 5.3.10-1。
答案2
我刚刚在 OpenSUSE 本地系统上遇到了类似的 Apache 2.2 和 PHP 5.4 问题。大多数请求都按预期工作,但(一些)POST 请求立即地并始终以“连接已重置”错误作为答复。错误日志和访问日志中均无条目。这与浏览器无关。
解决方案
我将 PHP 降级到 5.3 版并重新启动了 Apache,但没有任何变化。但在完全重启系统后,一切正常。
答案3
有趣的
我刚刚将使用 VC6 Windows x64 位二进制文件的 Apache 2.2.19/PHP 5.2.5 升级到使用 VC9 x64 位二进制文件的 Apache 2.4/PHP 5.4.0,遇到了同样的问题。我安装了 Apache 作为服务。当我删除 Apache 作为服务并从命令行启动它时,这个问题就消失了。