centos7.0 tomcat9.0 ip访问 manager

Posted paulversion

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7.0 tomcat9.0 ip访问 manager相关的知识,希望对你有一定的参考价值。

版本:Tomcat 9.0

问题:新安装的tomcat,用其他机器访问tomcat的Server Status、Manager App、Host Manager三个页面均显示403(本机访问没有问题),conf/tomcat-users.xml里已添加配置:

<role rolename="manager-gui"/>

<role rolename="admin-gui"/>

<user username="tomcat" password="qazwsx" roles="manager-gui,admin-gui"/>

 

重启之后,还是403,甚至在尝试使用多种解决方法的时候还出现过404(原因不明)

打开webapps下的host-manager和manager,都有一个共同的文件夹META-INF,里面都有context.xml,这个文件的内容是:

<Context antiResourceLocking="false" privileged="true" >

  <Valve className="org.apache.catalina.valves.RemoteAddrValve"

         allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />

</Context>

通过查看官方文档,知道,这段代码的作用是限制来访IP的,127.d+.d+.d+|::1|0:0:0:0:0:0:0:1,是正则表达式,表示IPv4和IPv6的本机环回地址,所以这也解释了,为什么我们本机可以访问管理界面,但是其他机器确?403。

 

找到原因了,那么修改一下这里的正则表达式即可,比如我们只允许内网网段192.168.88访问管理页面,那么改成这样就可以:

<Context antiResourceLocking="false" privileged="true" >

  <Valve className="org.apache.catalina.valves.RemoteAddrValve"

         allow="192.168.88.*" />

</Context>

以上是关于centos7.0 tomcat9.0 ip访问 manager的主要内容,如果未能解决你的问题,请参考以下文章

将项目部署到tomcat的ROOT目录下无法访问(tomcat9.0.21)

nginx反向代理配置不生效

CentOS7.0下智能DNS服务配置

Centos7——16.搭建JAVAEE 环境(安装Tomcat9.0.24)

纯干货CentOS7上基于nginx搭建tomcat9.0版本的负载均衡群集管理

构建Docker镜像实战之构建Tomcat9.0镜像(RPM一键安装Java环境)