XAMPP:另一个Web服务器守护程序已经在运行了?

7kjnsjlb  于 2022-09-21  发布在  Unix
关注(0)|答案(11)|浏览(194)

我昨天一直在痛苦地分析,如果我有另一个运行着所有这些命令的ApacheWeb服务器示例

ps aux
ps -e
lsof 
netstat tunap

我没有在端口8080上运行的另一个APACHE示例或任何其他服务器。

然而,XAMPP为我提供了以下内容:

XAMPP: Another web server daemon is already running

我该怎么办?

我还编辑了httpd.conf以侦听端口9876,但仍然是一样的。

ercv8c1e

ercv8c1e1#

sudo rm /opt/lampp/logs/httpd.pid
// get listen pid
 sudo netstat -nap | grep :80

输出示例:

tcp6   0  0 :::80  :::*  LISTEN  14417/httpd

PID为14417

终止进程

sudo kill 14417

启动/重新启动Lampp服务器

sudo /opt/lampp/lampp restart
5q4ezhmt

5q4ezhmt2#

如果:

lsof -Pi |grep 8080        returns no results
netstat -na |grep 8080     returns no results
ps -ef                     shows no web server processes

那么,可能有一个锁文件放在周围,初创公司正在检查?它们通常在/var/run下找到,但不一定要找到。在这一点上,我通常会运行strace来查看发生了什么:

Strace-e读取=all-e写入=all-f-o strace.out您的启动命令

然后打开strace.out,在输出中搜索“..已在运行”字符串,并开始查看其上方的行,以查看失败的原因。

zc0qhyus

zc0qhyus3#

我也没有运行任何服务器,但我发现这个命令拯救了我:

sudo lsof -i :80

它向我展示了类似这样的东西:

COMMAND     PID    USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
Skype      4275    root   61u  IPv4 0x869da9d5a8e5506b      0t0  TCP *:http (LISTEN)

因此,杀死Skype使其发挥了作用。

mhd8tkvw

mhd8tkvw4#

注意port-check-in开始脚本

如果您将您的Xampp Apache更改为侦听另一个端口(/opt/lampp/etc/httpd.conf-->“Listen 80”现在是“Listen 82”),那么您还必须在/opt/lampp/xampp启动脚本中更改port-check。

只需在/opt/lampp/xampp中搜索行

'Another web server is already running.'

并在前面的行中搜索:

if testport 80

将其更改为:

if testport 82

这样,您就可以在端口82上启动XAMPP,并在端口80上保持常规Web服务器的运行。

nafvub8i

nafvub8i5#

sudo /etc/init.d/apache2 stop
sudo /etc/init.d/mysql stop
sudo /etc/init.d/proftpd stop

这个解决方案似乎奏效了。您必须重新启动Lampp:

sudo /opt/lampp/lampp restart

在出现类似问题后,针对Ubuntu 12.04测试了解决方案。

huus2vyu

huus2vyu6#

下面的命令应该对我有效

sudo service apache2 stop

然后

sudo /opt/lampp/lampp restart
krcsximq

krcsximq7#

我解决了禁用SSL端口的问题

sudo /opt/lampp/lampp disablessl

然后

sudo /opt/lampp/lampp start
c0vxltue

c0vxltue8#

上面的解决方案对我不起作用。但这个解决方案确实做到了-

sudo apachectl stop

如果XAMPP图形用户界面可用,则重启APACHE、MySQL或从终端重启(在Ubuntu中)-

sudo /opt/lampp/lampp restart
0lvr5msh

0lvr5msh9#

您可以使用以下命令从命令外壳执行此操作:

sudo netstat -ltnp | grep :80

在最后一列中,您将看到:id/进程名。您可以在稍后使用下面的命令停止该进程:

ps aux | grep process_name

之后,尝试使用::sudo /opt/lampp/lampp restart重新启动Lampp

khbbv19g

khbbv19g10#

首先,只需运行sudo xampp,它应该会显示可用操作列表。如果不是,则说明XAMPP安装有问题(这是另一个问题)。

再次运行sudo /opt/lampp/manager-linux-x64.run,这将打开一个图形用户界面。在图形用户界面中,您可以启动和停止服务器(Apache、SQL)。在大多数情况下,它可能会奏效。

如果未在图形用户界面中启动,则更改端口。(在图形用户界面中有一个更改端口的选项)。现在,它可能会奏效。

如果图形用户界面选项对您不起作用,请尝试下一步。

选项1.打开/opt/lampp/logs/error_log文件,读取最后10行。
在我的例子中,错误是could not bind to address [::]:80。这会通知另一个服务正在使用端口80。选项是,更改位于GUI/opt/lampp/properties.ini文件的apache服务器端口(“有时您必须注销系统,然后重新登录才能工作。”)或停止使用该端口的服务器。

提示:这里用的是80,所以试一下81,以此类推。

选项2.执行以下步骤。

停止xampp sudo xampp stop

然后

sudo /etc/init.d/apache2 stop

sudo /etc/init.d/mysql stop

sudo /etc/init.d/proftpd stop

然后

启动Xampp sudo xampp start

**注意:-**删除/etc/init.d/apache2How to remove Apache service

6l7fqoea

6l7fqoea11#

以下命令应适用于停止MySQL服务的所有场景:

sudo service mysql stop

点击此启动灯服务后,使用以下命令:

sudo /opt/lampp/lampp start

相关问题