Mac系统开发常见问题-80端口被占用的解决方案1-使用pfctl做网络层转发

原创 2016年05月31日 21:05:36

IntelliJ IDEA之Tomcat启动相关报错:

1.EvnetLog报错:Error running test1: Address localhost:80 is already in use

大致可能解决方案1:

Mac OS X 因为要绑定80端口需要ROOT权限, 但是如果用root权限启动eclipse或tomcat又会造成, 启动创建的各类文件是root的,普通用户无法删除。

为此, 我们可以通过pfctl做网络层的端口转发, 让连接到本机80端口的请求, 都转发到9090端口; (注意, Mac OS 会使用80端口做网络文件共享, 要先关闭掉)

修改/etc/pf.conf, 使用sudo vim /etc/pf.conf
pf.conf是对顺序强要求的, 所以注意添加的内容放的顺序

rdr-anchor "com.apple/*"

rdr on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 9090
添加rdr on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 9090 到pf.conf文件的rdr-anchor "com.apple/*" 这一行后面。

lo0 通过ifconfig 看自己那个设备绑定的是127.0.0.1, lo0是这个网络设备的名字。 修改好pf.conf之后执行一下命令,让端口转发生效

sudo pfctl -d


sudo pfctl -f /etc/pf.conf


sudo pfctl -e

在tomcat的配置中,设定启动端口为9090

好了这样只需要普通权限启动tomcat在9090端口即可, 访问本地应用时直接访问80端口即可。

版权声明:本文为博主原创文章,未经博主允许不得转载。

一站式解决mac os 80端口占用问题

在使用mac os 进行web开发时,会遇到80端口已经被占用的情况。解决这个问题可以通过以下几个步骤。 1、使用lsof -i:80查看当前占用80端口的进程,如果有就kill掉。 2、关闭ma...
  • u010256841
  • u010256841
  • 2015年04月23日 11:21
  • 13796

MAC 下解决端口占用的问题

查看端口号终端输入:sudo lsof -i tcp:port 将port换成被占用的端口(如:8086、9998) 将会出现占用端口的进程信息。杀死占用端口的PID进程找到进程的PID,使用kil...
  • ccccdddxxx
  • ccccdddxxx
  • 2016年02月29日 10:34
  • 12668

mac 端口被占用 解决办法

查看端口号占用情况终端输入:sudo lsof -i tcp:port 将port换成被占用的端口(如:8080、8888) 将会出现占用端口的进程信息。杀死占用端口的PID进程 找到进程的PI...
  • fengcai0123
  • fengcai0123
  • 2017年06月28日 10:02
  • 130

Mac 上使用80端口

Mac OS X  默认Web共享使用Apache 所以80端口是被占用的。  首先需要修改的配置文件。最新的系统此配置文件已经由原来的/etc/httpd 目录更换到了/etc/apach...
  • springsu
  • springsu
  • 2014年07月06日 11:01
  • 1611

MacOS提示80端口被占用

Intellij IDEA上把tomcat的默认端口改成80,运行web应用时提示80端口被占用 使用lsof -i:80命令找不到是哪个程序占用了80端口 由于 Mac 系统限制非root用户不...
  • buyueliuying
  • buyueliuying
  • 2017年11月21日 09:15
  • 282

一站式解决mac os 80端口占用问题

在使用mac os 进行web开发时,会遇到80端口已经被占用的情况。解决这个问题可以通过以下几个步骤。 1、使用lsof -i:80查看当前占用80端口的进程,如果有就kill掉。 2、关闭ma...
  • q375537943
  • q375537943
  • 2017年09月12日 08:54
  • 377

Mac 80端口占用

问题tomcat 默认端口是 8080,但是我的一个程序必须用 80 端口启动,才能根据域名去 cas 校验,在idea 中设置了 tomcat 的启动端口是 80 后,并没有起作用,报了 “80端口...
  • lzx_2011
  • lzx_2011
  • 2017年02月13日 20:31
  • 1388

Mac系统开发常见问题-IntelliJIDEA-TOMCAT-Address localhost:80 is already in use

IntelliJ IDEA之Tomcat启动相关报错: 1.EvnetLog报错:Error running test1: Address localhost:80 is already in use...
  • ILOVESMJ
  • ILOVESMJ
  • 2016年05月30日 23:00
  • 7594

pfctl使用

pfctl -e 开始pfctl pfctl -d 结束pfctl pfctl -f 载入pf.conf pfctl -nf /etc/pf.conf 解析文件,但不载入 pfctl -Rf /etc...
  • u012724885
  • u012724885
  • 2016年03月31日 10:08
  • 894

Mac OS X下绑定80端口

Mac OS X 绑定80端口
  • yehuijun
  • yehuijun
  • 2014年10月11日 09:59
  • 14040
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mac系统开发常见问题-80端口被占用的解决方案1-使用pfctl做网络层转发
举报原因:
原因补充:

(最多只允许输入30个字)