如何调试 Apache,而不是在启动时启动

如何调试 Apache,而不是在启动时启动

Apache 已经设置为服务,因为:

$ sudo update-rc.d apache2 defaults
 System start/stop links for /etc/init.d/apache2 already exist.

但 Apache 没有启动。我如何开始调试出现的问题?

我正在运行 Linux Mint,因此具有 Debian 风格。

答案1

首先查看错误日志tail -15 /var/log/apache2/error.log

如果这没有给出端口不可用等提示,请运行apache2ctl -t以测试您的配置。

如果您的配置良好,请检查是否有任何进程已绑定到端口 80 或 443(这可能是您希望 apache 使用的端口)。输出的最后一列将是 $PID/$process_name。

   sudo netstat -tlpne | egrep ':(80|443)'

或者,查看 Apache 是否正在运行但正在侦听其他端口...

  sudo netstat -tlpne | grep apache

如果您现在还没有解决这个问题,那么检查 Apache 是否配置为您期望的域也没有什么坏处,因此运行一下apache2ctl -S,您应该会看到已配置域的列表。如果您的域/端口组合未在那里列出,您将需要整理您的配置。

还有更多,但这些将揭示许多常见的配置问题。

答案2

您应该能够通过跟踪系统和 apache 日志来判断。通常位于/var/日志/消息//var/log/httpd|apache2/分别。然后使用提供的消息进行故障排除。

答案3

你试一试:

sudo update-rc.d apache2 enable

相关内容