我的 Apache2 挂了。我无法得到任何回应。
我试图运行 wget localhost
它只是像这样挂起:
--2012-03-12 06:36:40-- http://localhost/
Resolving localhost... 127.0.0.1
Connecting to localhost|127.0.0.1|:80... connected.
HTTP request sent, awaiting response...
如何获得更多调试信息?
最佳答案
使用 netstat -nt
查看从 127.0.0.1 到端口 80 的连接。
您可以使用 fuser -n tcp 80,127.0.0.1,<port-number>
从 127.0.0.1 中查找具有端口 80 TCP 连接的 Apache 进程的PID。
然后做一个 strace -p <pid>
在该进程中查看它在系统调用级别执行的操作。
如果您以单进程模式重新启动 Apache,您可以取消 pid 查找步骤(前提是挂起仍然重现!)如果是这种情况,我将只在 strace
下运行该 Apache并捕捉踪迹。
基于此,我将决定下一步要做什么。它是卡在系统调用中,而不是卡在系统调用中,......哪个系统调用。最后的手段是获得调试版本和 gdb
-它。
Apache 调试指南:http://httpd.apache.org/dev/debugging.html
关于apache2 - 如何检查Apache2卡在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9662714/