Apache Tomcat 9无法访问管理器webapp

时间:2017-04-05 13:38:04

标签: apache tomcat

我成功安装了Apache Tomcat 9,并且我访问了servername:8080。

我按照文档访问经理网络应用程序并且:

  • 打开$ CATALINA_HOME / conf / tomcat-user.xml
  • 添加<role rolename="manager-gui"/>
  • 添加<user username="tomcat" password="s3cret" roles="manager-gui"/>
  • $ CATALINA_HOME / bin / catalina.sh stop
  • 检查服务器名称:8080已关闭
  • $ CATALINA_HOME / bin / catalina.sh start
  • 检查服务器名称:8080已启动
  • servername:8080 / manager / html返回 HTTP状态403 - 禁止

我找不到我错过的配置,并会对任何帮助或建议感到满意。

4 个答案:

答案 0 :(得分:12)

我想分享我找到enter image description here的解决方案,而不是在标记的答案中,而是在淡入淡出的答案中。

CATALINA_HOME / webapps / manager / META-INF / context.xml 中评论 Valve 属性并重新启动Tomcat解决问题,我现在可以评估Web管理器< / p>

答案 1 :(得分:9)

请更改 context.xml 文件中的允许属性值,该文件位于 webapps / manager / META-INF 文件夹中。

旧配置

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

更改为新配置

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="\d+\.\d+\.\d+\.\d+" />

这将允许从所有IP地址远程访问管理员以进行登录。此外,您将无法获得403访问被拒绝页面

答案 2 :(得分:1)

即使是Tomcat 9.0.20,我也遇到了同样的问题

我完全评论了Valve标记( / tomcat / webapps / manager / META-INF )。 所以我的context.xml如下所示

<Context antiResourceLocking="false" privileged="true" >
  <!--
    Remove the comment markers from around the Valve below to limit access to
    the manager application to clients connecting from localhost
  -->
  <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  -->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFil$
</Context>

然后在tomcat-users.xml( / tomcat / conf / )中做到了

<role rolename="tomcat"/>
<role rolename="manager-gui"/>
<user username="user" password="user@123" roles="manager-gui"/>
<user username="guest" password="guest123" roles="tomcat"/>

现在我可以使用用户和user @ 123凭据登录了。

答案 3 :(得分:1)

快速访问tomcat 9中的所有链接

enter image description here

在 tomcat-users.xml 添加:

<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager-status"/>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>

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

然后重新启动 catalina stop catalina start

(对于我在带有自制软件的 macOS 上,文件位于 /usr/local/Cellar/tomcat/9.0.43/libexec/conf/tomcat-users.xml