Tomcat普通用户启动注意事项


今天项目部署上线,老大跟我建议说不要使用root用户部署,试用普通用户运行。刚开始没想什么,后来部署的时候碰到各种权限问题。
记录一下,以防忘记了。

1.使用普通用户启动失败。

首先不用想就去$TOMCAT_HOME/logs/catalina.out 查看日志

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


原因:由于非root用户无法使用1024以内的端口,所以启动报权限拒绝错误。
解决方法:
    1、修改端口,换一个1024以上的端口。
    2、继续使用端口80启动,还是需要更换启动端口,之后通过iptables命令对端口进行重定向。 需要使用root用户。
        iptabnles -A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8989

2.启动成功后访问jsp页面无法找到

以为启动失败了,可以访问接口是正常的。后来通过百度查了下,是权限问题。
原因:启动tomcat的用户, 没有tomcat目录的所有者权限。jsp页面无法解析到work目录导致。
解决:
        1.切换root用户
        2.chown -R backproc $TOMCAT_HOME
        3. 对www目录赋权,防止意外。 
                chown -R backproc $WWW_HOME


以上是今天部署tomcat碰到的问题,有错误的地方请朋友指出。谢谢。。。
        




原文地址:https://www.cnblogs.com/luguoyuanf/p/d6d4fd3cf157257bd5ab9d7a8a990a1d.html