一、问题背景
在访问Tomcat的Manager应用时,出现“403 Access Denied"错误,提示未授权访问。默认情况下,Manager 应用仅允许本地浏览器访问,且需要正确配置用户角色权限才能正常使用。

打开服务器显示403状态,访问被拒绝

二、解决步骤
1.配置用户角色和权限(tomcat-users.xml)
Tomcat 的用户权限通过/usr/local/tomcat/apache-tomcat-9.0.106/conf/tomcat-users.xml文件管理,需在<tomcat-users>标签内添加具有manager-gui角色的用户,步骤如下:
- 打开文件:conf/tomcat-users.xml
- 添加配置(允许通过 HTML 界面访问 Manager):
# 定义一个名为manager-gui的角色,用于访问Tomcat Manager应用的HTML图形界面和状态页面
<role rolename="manager-gui"/>
# 设置用户名和密码,并关联到manager-gui角色,使其拥有访问Manager应用HTML界面的权限
<user username="tomcat" password="s3cret" roles="manager-gui"/>

2.允许远程访问(创建manager.xml)
默认情况下,Tomcat 限制非本地 IP 访问 Manager 应用,需通过配置解除限制:
- 在conf/Catalina/localhost目录下创建manager.xml文件
- 添加内容(允许所有 IP 访问):
<Context antiResourceLocking="false" privileged="true">
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="^.*$" />
</Context>
3.重启Tomcat使配置生效
./bin/shutdown.sh # 关闭Tomcat
./bin/startup.sh # 启动Tomcat
4.验证访问
重启后重新访问 Manager 应用,会提示输入用户名(tomcat)和密码(s3cret)

成功登录并查看服务器状态信息






