尝试启动服务器时,Apache无法启动,MAMP声称端口([::]:8888)已在使用中。
我几乎已经尝试了我所知道的确定哪个进程正在使用该端口(以及之前在SO上列出的许多解决方案),但我没有得到任何结果。 lsof或netstat都没有列出关于端口8888的任何信息。似乎没有任何东西使用这个端口。
我需要改进我的搜索并找到真正使用该端口的东西(如果有的话),或以某种方式说服MAMP该端口实际上没有被使用。有什么建议吗?
编辑:将端口更改为8887允许Apache启动。这并没有改变任何事情都没有使用端口8888的事实,它应该适用于该端口。
答案 0 :(得分:14)
尝试进入活动监视器并搜索Mysqld和Httpd并结束任何进程。然后重启Mamp。
答案 1 :(得分:4)
杀死所有httpd和Mysqld进程为我解决了问题。我有大约10个httpd运行实例。不知道为什么。
答案 2 :(得分:0)
升级到bash-4.3.27-10.4u之后,我还注意到apache无法在端口8889上启动,使用在Intel Core Duo上的Mac OS X 10.6.8上运行的MAMPS 1.7.2。叹。解决方案似乎是恢复到旧版本的bash和sh。
随后的调查证实,新的sh或新的bash或两者都会阻止apache启动。
答案 3 :(得分:0)
对不起,迟到了。 此命令将告诉您使用8888的进程或守护程序:
sudo lsof -P -n -iTCP -sTCP:LISTEN
如果您不喜欢它,可以使用kill(或者进程名称为killall)自由杀死进程ID
答案 4 :(得分:0)
打开=> MAMP =>首选项=>端口=>更改Apache端口8888 to 8080
重启MAMP。它会起作用。
答案 5 :(得分:0)
在我安装PHP扩展程序以便稍后与MAMP一起使用时,我的Mac启动了Mac。然后我就停止了。然后MAMP又开始工作了。
sudo apachectl stop
答案 6 :(得分:0)
如果您转到
首选项>退出MAMP时>选中“停止服务器”
当您退出MAMP时,它将杀死上面列出的所有进程。