Tomcat 启动报错 java.net.BindException: Permission denied :80

Tomcat一启动就报如下错误:

Caused by: java.net.BindException: Permission denied <null>:80

        at org.apache.tomcat.util.net.JIoEndpoint.bind(JIoEndpoint.java:410)
        at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:640)
        at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:434)
        at org.apache.coyote.http11.AbstractHttp11JsseProtocol.init(AbstractHttp11JsseProtocol.java:119)
        at org.apache.catalina.connector.Connector.initInternal(Connector.java:978)
        ... 13 more
造成原因:在linux系统上只有root用户才可以访问1024以下的端口号,其余用户不能访问。


解决方法1:

   在启动Tomcat时,使用sudo ./startup.sh或使用root用户启动

解决方法2:

修改Tomcat的server.xml配置文件,

将端口修改为8081(或者其它1024以上的端口号,但不能与本机上的其它端口冲突),

然后使用root用户登录服务器,执行端口重定向命令:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8081

(当访问80端口时重定向到8081端口)。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。