• Tomcat7/8访问Server Status、Manager App、Host Manager出现403 forbidden


    在配置好Tomcat7/8后,我们往往需要访问Tomcat7/8的Manager以及Host Manager。就需要在tomcat-users.xml中配置用户角色来实现。在地址栏输入:localhost:8080访问 Tomcat,在打开的界面中,在右上角有这样三个按钮: 
      1. Server Status 
      2. Manager App 
      3. Host Manager 
       
    可是在我们配置好tomcat-users.xml后,这三个按钮往往不能都访问,要么是只能访问其中一个,或者就是两个。出现这种问题很有可能是你在配置中,角色没有添加全,尤其是在第三个按钮的配置上,第三个按钮的配置Tomcat7和Tomcat8的配置是不相同的。
    为了实现配置让三个按钮都能访问到,我们先看下tomcat-users.xml里面的一段用户配置:

    <tomcat-users>
    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <user username="tomcat" password="tomcat" roles="manager-gui"/>
    <user username="admin" password="admin" roles="manager-script"/>
    </tomcat-users>

    <role rolename="角色名">这个是用来定义角色的,很明显rolename的属性值并不是我们随意写的。实际上,Tomcat已经为我们定义了4种不同的角色,也就是4个rolename,我们只需要使用Tomcat为我们定义的这几种角色就足够满足我们的工作需要了。

    manager-gui     #允许访问html接口(即URL路径为/manager/html/*)
    manager-script   #允许访问纯文本接口(即URL路径为/manager/text/*)
    manager-jmx   #允许访问JMX代理接口(即URL路径为/manager/jmxproxy/*)
    manager-status   #允许访问Tomcat只读状态页面(即URL路径为/manager/status/*)

    特别需要说明的是:manager-gui、manager-script、manager-jmx均具备manager-status的权限,也就是说,manager-gui、manager-script、manager-jmx三种角色权限无需再额外添加manager-status权限,即可直接访问路径”/manager/status/*”。

    <user username="用户名" password="密码" roles="角色(可多个)"/>这个很简单,就是用来表示用户的,其中roles对应的就是上面定义的角色,可以有多个角色,多个角色用“,”隔开即可。也可以配置多个用户。

    需要访问前两个按钮,只需配置manager-*(4个按需配置)即可。 
    需要访问第三个按钮,需要配置 admin-gui(HTML UI接口)或admin-script(纯文本接口)。 
    如果都要访问,配置在一起即可。

    下面根据Tomcat7和Tomcat8分别贴出用户配置:

    1、Tomcat7访问Server Status、Manager App、Host Manager的配置。

    声明:此配置不注重安全性,只是测试。具体根据需求可删减

    <role rolename="admin"/>
    <role rolename="admin-gui"/>
    <role rolename="admin-script"/>
    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status"/>
    <user username="admin" password="admin" roles="admin,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status"/>

    2、Tomcat8访问Server Status、Manager App、Host Manager的配置。

    声明:此配置不注重安全性,只是测试。具体根据需求可删减 
    Tomcat8如果在上面配置的基础上,访问时会报403错误,所以需要修改,如果没有的话新建conf/Catalina/localhost/manager.xml 文件。 
    配置内容如下:

    <Context privileged="true" antiResourceLocking="false"
             docBase="${catalina.home}/webapps/manager">
        <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
    </Context>

    转自:https://blog.csdn.net/weixian52034/article/details/53218584

  • 相关阅读:
    js循环遍历弹框,先弹出第一个之后逐步弹出第二个。。
    js获取字符串的字节长度
    tomcat启动报错:Address already in use: JVM_Bind
    自整理的jquery.Validate验证表达式
    jerichotab 初始化页面显示tab页中的第一个
    POST提交大量数据,导致后面数据丢失
    IDEA启动时自动报Plugin Error错误
    apiCloud检出代码出现以下图示错误:
    javascript的一些在IE下不支持的函数小结
    The Nature of Recognition
  • 原文地址:https://www.cnblogs.com/zf29506564/p/8783479.html
Copyright © 2020-2023  润新知