![Apache 已启动但未读取请求](https://linux22.com/image/500875/Apache%20%E5%B7%B2%E5%90%AF%E5%8A%A8%E4%BD%86%E6%9C%AA%E8%AF%BB%E5%8F%96%E8%AF%B7%E6%B1%82.png)
这通常在重启几分钟后发生apache
:
httpd
守护进程已启动,但未从套接字读取请求。Web 客户端只是在连接上永远等待。
当我运行 时netstat
,Recv-Q 显示一个正的字节数,并且没有变化。因此,客户端和 Apache 之间的连接基本上处于 CONNECTED 状态,但没有取得任何进展。
重新启动 apache 可以在几分钟内解决问题,但之后一切又会再次出现似曾相识的情况。
其他服务器(sshd
、ftpd
等)都很好。
我应该进一步研究什么?有线索吗?谢谢!
答案1
运行“netstat -l”来验证 apache 是否正在主动监听端口 80,然后验证网络路径中没有防火墙干扰流量,无论是在本地主机(“iptables -L”)还是在网络上。
如果您启用了 selinux 日志,检查它也不失为一个好主意。
答案2
发生这种情况时有多少 Apache 进程正在运行?如果您遇到太多请求,Apache 似乎会挂起。
答案3
请发布您的 httpd.conf 以及您的传输日志和错误日志,这将有助于诊断此问题。您是否在 httpd.conf 中设置了超时?http://www.faqs.org/docs/securing/chap29sec245.html
请求的文件类型是什么?托管静态 HTML 文件时是否会出现这种情况?