我正在尝试安装 apache2,遇到了这个问题。请给我一些解决方案
重新启动 Web 服务器 apache2 出现错误:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
[fail]
* The apache2 instance did not start within 20 seconds. Please read the log files to discover problems
答案1
跑步
sudo netstat -tulpn | grep :80
你将获得类似的输出
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1066/lighttpd
注意监听端口的进程的 pid,在我的情况下是 1066。然后运行
sudo kill -9 1066
记得将 pid 更改为监听端口的 pid,它可能与 1066 不一样
答案2
您在哪种类型的服务器上运行它?
解决第一个错误
AH00558:apache2:无法可靠地确定服务器的完全限定域名,使用 127.0.1.1。全局设置“ServerName”指令以隐藏此消息
您需要编辑httpd.conf
文件,添加以下行:
ServerName localhost
要解决其他错误,您应该确保您尝试以 root 权限运行 Apache。
sudo /usr/sbin/apachectl start
答案3
与许多服务器应用程序一样,您无法绑定到已被其他应用程序绑定的端口(在本例中为 的端口 80 http
)。导致错误的原因是 Apache 无法绑定到端口 80,因为其他程序已在该端口监听。
运行sudo netstat -tulpn | grep :80
并查找监听端口 80 的进程的名称。然后重新配置或删除该程序。
答案4
您可能安装了新的 Web 服务器或任何保留端口 80 的东西,请检查您的服务以及您新安装的内容