apache2 - 如何检查Apache2卡在哪里?

标签 apache2

我的 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/

相关文章:

php - Virtual Box 中的访问被拒绝

javascript - 使用 AngularJS 从 Apache2 服务器获取最新的 Json

apache2 - 无法识别 ServerAlias www.example.com

Google Kubernetes Engine 上的 Django、Apache2 将 Opencensus Traces 写入 Stackdriver Trace

tomcat - Apache HTTP Server 和 Tomcat 在一台机器上

css - Font-Awesome:试图让这个东西与 WordPress 一起工作

apache - DBus 是我要找的吗?

docker - Docker 容器内自动启动服务