在mac开发web应用,我们经常使用xx.com(80端口)访问本地的项目。
由于mac系统默认是不允许其他应用使用80端口(非root用户不能使用1024以下的端口),IDEA启用tomcat会报端口被占用。
解决思路主要是使用端口转发,比如80转到8080。
1.创建转发文件
命令:
sudo vim /etc/pf.anchors/idea.tomcat.forwarding
内容:
rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 80 -> 127.0.0.1 port 8080
rdr pass on lo0 inet proto tcp from any to 127.0.0.1 port 443 -> 127.0.0.1 port 8443
2.创建配置文件
命令:
sudo vim /etc/pf-tomcat.conf
内容:
rdr-anchor "forwarding"
loadanchor "forwarding" from "/etc/pf.anchors/idea.tomcat.forwarding"
3.让配置生效
命令:sudo pfctl -ef /etc/pf-tomcat.conf
注意:系统重启端口转发会失效,失效后重新执行即可