Apache2 重启命令时出错

Apache2 重启命令时出错

当我尝试重新启动 apache2 时,它出现了问题,apache 工作正常,但我就是无法重新启动它。我有一个 Webmin 服务器、pi-hole、ntopng 和一个包含 2 个单词的页面。以下是我的日志:

  root@SERVER:~# systemctl status apache2.service
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Fri 2017-12-15 15:55:57 UTC; 18s ago
  Process: 14827 ExecStart=/usr/sbin/apachectl start (code=exited, status=1/FAILURE)
Dec 15 15:55:57 SERVER apachectl[14827]: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
Dec 15 15:55:57 SERVER apachectl[14827]: (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
Dec 15 15:55:57 SERVER apachectl[14827]: no listening sockets available, shutting down
Dec 15 15:55:57 SERVER apachectl[14827]: AH00015: Unable to open logs
Dec 15 15:55:57 SERVER apachectl[14827]: Action 'start' failed.
Dec 15 15:55:57 SERVER apachectl[14827]: The Apache error log may have more information.
Dec 15 15:55:57 SERVER systemd[1]: apache2.service: Control process exited, code=exited status=1
Dec 15 15:55:57 SERVER systemd[1]: Failed to start The Apache HTTP Server.
Dec 15 15:55:57 SERVER systemd[1]: apache2.service: Unit entered failed state.
Dec 15 15:55:57 SERVER systemd[1]: apache2.service: Failed with result 'exit-code'.

journalctl -xe 的代码有点滞后这里

这是我尝试重新启动时出现的错误:

service apache2 restart
Job for apache2.service failed because the control process exited with error code.
See "systemctl status apache2.service" and "journalctl -me" for details.

你能帮我吗?谢谢,Poli

答案1

如果问题出在绑定到地址上(根据日志),则意味着另一个程序可能正在使用该端口/地址(80)。您可以找到该程序并将其停止,以便端口可供使用apache2

请尝试以下步骤:

  1. 输入sudo netstat -plant
    此命令将为您提供所有占用特定端口的程序。搜索占用端口“ :::80”(或“ 0.0.0.0:80”)的程序。保存其 PPID(PPID 是程序名称前面的数字)。

  2. 输入sudo kill <PPID>,其中 '' 是上一步保存的 PPID。
    这将停止使用该端口的程序。

  3. 现在可以自由使用该端口了。(重新)启动您的 apache2 服务器。

来源:https://wiki.apache.org/httpd/CouldNotBindToAddress

相关内容