当前位置:  开发笔记 > 编程语言 > 正文

OSX:无法侦听localhost:80(原因:权限被拒绝)

如何解决《OSX:无法侦听localhost:80(原因:权限被拒绝)》经验,为你挑选了1个好方法。

我已经下载了PhpStorm并设置了所有必需的配置.当我尝试在端口80上运行项目时,我收到此错误.

无法收听localhost:80(原因:权限被拒绝)

当我尝试使用任何其他端口,如8080时,我收到此错误.

无法收听localhost:8080(原因:地址已在使用中)

我尝试了几个不同的随机端口.但是我一直都在使用这个错误.

我安装了xampp.当我尝试在浏览器中使用端口运行url时,它工作正常.问题是它不能用于PhpStorm.

我被卡住了.



1> coderade..:

错误说明非常清楚:

错误:

无法在localhost:80上侦听(原因:权限被拒绝)

您确实没有使用此端口的权限;因此,您需要更改用户或使用sudo运行您的应用程序。

和错误:

无法在localhost:8080上侦听(原因:地址已在使用中)

您尝试使用的地址localhost:8080已被其他进程/软件使用。

通常,如果您更改端口,则可以解决问题:(例如9090)。


但是,如果您想知道哪个程序正在Unix(Mac OSX,Linux)中使用端口80,则可以使用lsof命令:

去做这个:

在终端中,您需要使用:

sudo lsof -i :80

结果将是这样的:

COMMAND    PID   USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
httpd       82   root    4u  IPv6 0x763617bed21ecc33      0t0  TCP *:http (LISTEN)
httpd      226   _www    4u  IPv6 0x763617bed21ecc33      0t0  TCP *:http (LISTEN)

在此结果上,我们可以看到/usr/sbin/httpd正在侦听我机器(即Apache服务器)上的端口80。

要了解正在端口80上侦听的进程的详细信息,可以使用ps命令:

ps u PID_of_target_process

将返回类似于以下内容的结果:

USER   PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMAND
root    82   0.0  0.0  2463324   4248   ??  Ss    9:48AM   0:00.93 /usr/sbin/httpd -D FOREGROUND

要使用pid杀死进程,可以使用kill命令,如下所示:

sudo kill -KILL PID_of_target_process

取消进程后,该端口将再次可用。

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有