Linux 端口

本文解决在Linux环境下使用Eclipse HSFJetty插件时无法绑定80端口的问题,并介绍了解决方案,包括使用sudo运行Eclipse、调整iptables规则将80端口转发至8080端口。

Linux 端口处理 eclipse本地跑web应用绑定80端口的问题
因为要在本地跑一个web application,使用eclipse的HSF Jetty插件绑定80端口不成功,8080端口则没有问题:

2012-09-17 11:36:43.470:WARN::failed SelectChannelConnector@0.0.0.0:80: java.net.SocketException: 权限不够
2012-09-17 11:36:43.473:WARN::failed Server@327ac9a7: java.net.SocketException: 权限不够
java.net.SocketException: 权限不够

1. 猜想有其他进程已经占用了80端口
$ sudo netstat -anpt | grep LISTEN
结果80端口是available的

2. Linux的问题?
好吧,想起来了,Linux下只有root用户才能绑定使用1024以下的端口。尝试用sudo eclipse启动IDE,然后编译,发现maven的本地库有些问题,偷个懒把原用户的本地库复制一份后正常

$cd /home/ningoo/.m2
$cp -r * /root/.m2

3. iptables神器
虽然sudo大法有效,感觉还是不太爽。于是神器iptables出场,设置将80端口转发到8080端口,这样eclipse中的jetty插件还是可以绑定在8080端口,/etc/hosts绑定本地到日常的域名也可以通过80端口自动转发,方便。

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080
iptables -t nat -A OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 8080

如果不需要转发了,通过以下命令清除设置
iptables -t nat -F PREROUTING
iptables -t nat -F OUTPUT
如果要保存iptables设置以便重启后生效,可以参考这里

转载于:https://my.oschina.net/u/230843/blog/377281

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值