开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Tomcat manager页面 403的真正原因及解决办法

简介:
+关注继续查看

版本:Tomcat 8.5.8

问题:新安装的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(原因不明)


查找网上解决办法无果,大部分网上的文章都只提到了在tomcat-users.xml里添加上面的语句,无法解决,通过查阅官方文档,英文真的烂(用翻译软件,看得一知半解),终于找到真正原因所在。


打开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>


修改完毕,关闭浏览器,重新打开tomcat,问题解决!


附:context.xml除了可以限制IP和主机之外,还有更多的作用,大家可以参考官方文档:http://tomcat.apache.org/tomcat-8.5-doc/config/valve.html#Remote_Address_Filter


本文转自 kuSorZ 51CTO博客,原文链接:http://blog.51cto.com/kusorz/1878743


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
tomcat部署测试应用及tomcat常用组件配置记录
tomcat部署测试应用及tomcat常用组件配置记录
2519 0
企业级Tomcat部署实践及安全调优
Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。
1681 0
【tomcat 无法部署】svn上下载的maven项目无法部署到tomcat中
问题: svn上下载的maven项目无法部署到tomcat中,tomcat不识别项目,但是这个项目确实是web项目   发现的过程: 然后依次产看项目的编译版本:     项目的依赖架包:    才发现:     解决方法: 修改了这里的版本~~~ 将这...
892 0
tomcat生产部署关键参数设置
JVM设置 l 一般使用HotSpot JVM。 l 加上-server。 l -Xms/-Xmx:设置java堆初始化和最大值,默认是1/64物理内存和1/4物理内存,一般不超过物理内存的80%,且这两个应该设置成一样,,够用就好,太高会导致浪费内存和GC回收周期长。
864 0
Tomcat部署项目修改浏览器上猫咪头像
一、发现问题 用tomcat部署项目,在浏览器标签也上发现了tomcat猫咪图。要把这个图修改掉。  二、解决问题 apache-tomcat-5.5.28\webapps\ROOT下的ico文件,将需要替换的图片也命名为favicon.ico即可。若效果没有立即显现,可清除浏览器的浏览记录。  三、注意事项 1、若需要改变某个页面的logo,在该页面的head标签中加入标签名l
974 0
tomcat 部署位置定义方法备忘
当前 tomcat  部署位置   /usr/local/tomcat, 希望应用存放到 /data 可以通过下面方法实现 方法1 $CATALINA_HOME/conf/server.xml &lt;Context  path ="/tao"  reloadable ="false"  docBase ="/usr/local/tomcat"  workDir ="/data"
797 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载