无法启动apache2服务器

我在启动apache2服务器时收到以下错误消息:

$ sudo /etc/init.d/apache2 start *启动web服务器apache2
(98)已经在使用的地址:make_sock:无法绑定到地址0.0.0.0:443没有监听套接字可用,closures无法打开日志操作“开始”失败。 Apache错误日志可能有更多的信息。 [失败]

这里是sudo netstat -lntup的输出:

Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:28017 0.0.0.0:* LISTEN 941/mongod tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN 1355/dnsmasq tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 687/sshd tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 854/cupsd tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 941/mongod tcp6 0 0 :::22 :::* LISTEN 687/sshd tcp6 0 0 ::1:631 :::* LISTEN 854/cupsd udp 0 0 0.0.0.0:22543 0.0.0.0:* 1049/dhclient udp 0 0 127.0.1.1:53 0.0.0.0:* 1355/dnsmasq udp 0 0 0.0.0.0:68 0.0.0.0:* 1049/dhclient udp 0 0 0.0.0.0:46027 0.0.0.0:* 901/avahi-daemon: r udp 0 0 0.0.0.0:5353 0.0.0.0:* 901/avahi-daemon: r udp6 0 0 :::38743 :::* 901/avahi-daemon: r udp6 0 0 :::27403 :::* 1049/dhclient udp6 0 0 :::5353 :::* 901/avahi-daemon: r 

任何人都知道为什么以及如何修复?

谢谢!!!

当有两个Listen指令针对相同的IP /端口组合时,Apache会给出相同的错误信息。 第一个成功没有错误,第二个发现有东西已经在这个端口上聆听并中止。

在不同的文件中find这些指令并不罕见,例如vhost文件或顶层文件,如ports.confssl.conf

你可以用grep -r Listen /etc/apache2来find它们, grep -r Listen /etc/apache2grep -r Listen /etc/httpd这取决于你使用的是基于Debian的发行版还是基于RedHat的发行版。

Apache试图使用的端口已经在使用,使用命令sudo netstat -lntup并寻找:443,你会发现一个条目。 什么都听443端口停止,并尝试再次启动Apache,这应该做的伎俩。

我在这种情况下取​​得了成功,运行如下:

 /usr/bin/pkill apache2 && /etc/init.d/apache2 start 

目的是杀死任何徘徊的apache进程(“pkill”),然后启动apache