在Ubuntu上重启Apache – 错误“无法绑定到地址0.0.0.0:80”

我是n00b – 尝试在Rackspace Cloud上的Ubuntu 9.10(Karmic Koala)上安装apache2。 我已经设置/configurationOpenSSL并安装了Apache,但是Apache不会启动。 我假设它在我的/ etc / apache2 / sites-available / ssl或/ etc / apache2 / sites-available / default文件中configuration错误)

当我尝试使用以下命令重新启动Apache时:

sudo /etc/init.d/apache2 restart我得到以下错误信息:

  [错误](EAI 2)名称或服务未知:无法parsing主机名* .80  - 忽略! 
 [错误](EAI 2)名称或服务未知:无法parsing主机名* .80  - 忽略! 
 (98)已经在使用的地址:make_sock:无法绑定到地址0.0.0.0:80没有监听套接字可用,closures 
无法打开日志...失败! 

对于我的/ etc / apache2 / sites-available / ssl我已经使用了*:443的虚拟主机。

对于我的/ etc / apache2 / sites-available / default我已经使用了*:80的虚拟主机

错误消息提到.80而不是:80,查看所有的configuration文件,看看是否有任何提及这一点。 Doublecheck ServerName设置。

最后的错误意味着一个进程已经在服务器上使用端口80,绑定到一个或所有的接口。 要查看哪一个,请以根用户身份login并键入: netstat -nap | grep :80 netstat -nap | grep :80并检查它是什么进程,如果它不应该运行,就杀了它。 很可能是一个死/孤立的apache / httpd进程,当你开始/重新启动时卡住了。 手动杀死它,如果需要的话。

你应该把你的ServerName设置到httpd.conf中,确保主机名已经设置 – 运行uname -n

1)运行这个命令,它会检索你的服务器名称。

uname -r

2)复制您的服务器名称,然后编辑您的apache conf文件以定义ServerName指令。
在Ubuntu或Debian中:vim /etc/apache2/apache2.conf
尝试首先findServerName指令,可以用#注释,如果不存在,则添加它。

ServerName yourservername

你也必须检查你是否定义了Listen指令。

听:80

3)重新加载apacheconfiguration:

/etc/init.d/apache2重新加载

4)重新启动apache:

/etc/init.d/apache2重新启动