我成功安装了Apache Tomcat 9,并且我访问了servername:8080。
我按照文档访问经理网络应用程序并且:
<role rolename="manager-gui"/>
<user username="tomcat" password="s3cret" roles="manager-gui"/>
我找不到我错过的配置,并会对任何帮助或建议感到满意。
答案 0 :(得分:12)
我想分享我找到的解决方案,而不是在标记的答案中,而是在淡入淡出的答案中。
在 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中的所有链接
在 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
)