zoukankan      html  css  js  c++  java
  • Tomcat7以上403 Access Denied错误

    版本:Tomcat 9

    问题:新安装的tomcat,访问tomcat的Server Status、Manager App、Host Manager三个页面均显示403,conf/tomcat-users.xml里已添加配置:

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

    重启之后,还是403.

    查找网上解决办法无果,大部分网上的文章都只提到了在tomcat-users.xml里添加上面的语句,无法解决,通过查阅官方文档,终于找到真正原因所在(Tomat7不需要修改下面这两个文件只有Tomcat7以上才需要修改)。

    打开webapps下的host-managermanager,都有一个共同的文件夹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。

    找到原因了,那么修改一下这里的正则表达式即可,我们修改为所有人都可以访问,那么改成这样就可以:

    <Context antiResourceLocking="false" privileged="true" >
      <Valve className="org.apache.catalina.valves.RemoteAddrValve"
             allow="^.*$" />
    </Context>
    

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

  • 相关阅读:
    1.2 偏差与方差
    深度学习中Xavier初始化
    1.1 训练/开发/测试集
    Python笔记(5)类__方法与继承
    Python笔记(4)类__属性与描述符
    Python笔记(3)迭代器与生成器
    Python笔记(2)函数
    线性回归 Linear Regression
    Python笔记(1)变量与表达式
    跳转到某个Activity
  • 原文地址:https://www.cnblogs.com/luoruiyuan/p/6518508.html
Copyright © 2011-2022 走看看