XAMPP:Deamon已经在运行,但它不是apache
这个让我头疼……
我在Ubuntu 12.10上安装了XAMPP for Linux 1.7.7
。 我没有安装最新版本,因为新的安全“function”使XAMPP
如此安全我无法运行它。 但这是另一个故事。
在安装并运行了几个月后,我现在得到了着名的XAMPP: Another web server daemon is already running.
启动XAMPP时出错。 现在我已经广泛搜索,可以排除以下内容:
- 没有其他
Apache
安装,只有XAMPP
- 没有运行
apache
或apache 2
服务 - 没有运行使用
port 80
(使用netstat -an grep -w 80
检查)
我也完成了xampp
1.7.7的全新安装,但这给了我相同的结果。 我想我已经在google的前两个结果页面上尝试了所有解决方案,而且我无法接近解决方案。
谁能指点我如何找到已经运行的神秘Webdeamon
?
我在httpd.conf中更改了XAMPP监听的端口,在我的例子中,它位于/opt/lampp/etc/
文件夹中。 我更改了选项Listen,因为这是唯一一个值为80的选项。我仍然得到Deamon已经运行错误。
netstat
命令的输出如下:
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1189/tntnet tcp 0 0 192.168.178.52:35048 91.189.94.25:80 ESTABLISHED 2350/ubuntu-geoip-p tcp 0 0 192.168.178.52:35047 91.189.94.25:80 TIME_WAIT -
我已经杀死了ubuntu-geoip-p
服务,但找不到杀死tcp服务的方法,但我不认为必须杀死tcp服务才能启动apache。 无论如何,在此之后我仍然得到同样的错误。
还有其他建议吗?
lsof -i :80
给出了不同的输出,我看到tntnet
也使用了端口80.卸载的tntnet
和apache正常启动。 问题解决了! 谢谢(你的)信息。
只需将此命令运行到终端即可
sudo /etc/init.d/apache2 stop
在那之后
/opt/lampp/lampp/ start
@TedvG更新2012年11月17日
ubuntu-geoip-p
连接到端口80上的远程IP,因此它不相关。
看起来像tntnet(另一个Web服务器,这解释了它)进程是绑定端口80.你必须停止它(我猜service tntnet stop
它,如果不杀死tntnet
进程可能会kill -9 pid
来杀死它)。 您也可以通过完成tntnet
包卸载。
或者您可以更改apache端口,编辑lampp/etc/httpd.conf
,将端口更改为8080,例如:
#Listen 12.34.56.78:80 Listen 8080
使用lampp startapache
启动它
默认情况下,XAMPP的apache使用端口80(需要root用于1024以下的端口),无论如何可以通过编辑$XAMPP/apache/conf/httpd.conf
来更改它
你可以跑
lsof -i :80
要么
netstat -nap | grep :80
使用端口80确定进程
例如,如果我在端口8080上使用Python的SimpleHTTPServer模块
$ lsof -i :8080 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME python 16484 terry 3u IPv4 367600 0t0 TCP *:http-alt (LISTEN) $ netstat -anp | grep :8080 (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 16484/python
非常清楚。
因为我不知道我是否需要tntnet
,并且不关心找到困难的方法,所以最好的选择似乎改变了Apache使用的端口。
使用最新版本的XAMPP,可以使用包含的GUI管理器轻松完成:
-
启动管理器(如果在64位上工作,请使用
manager-linux-x64.run
):cd /opt/lampp sudo ./manager-linux.run
-
切换到“管理服务器”选项卡,然后选择“Apache Web服务器”。 单击配置 :
-
将相应字段上的端口更改为例如
8080
,然后单击“ 确定” : -
单击“全部启动”,从应用程序启动所有服务器。
-
打开您喜欢的浏览器并转到
http://localhost:8080
; 它应该自动重定向到http://localhost:8080/xampp
。