tomcat访问manager
在配置好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
tomcat访问manager的更多相关文章
- Tomcat 访问Manager APP报403错误
已在conf/tomcat-users.xml中添加用户信息 但是通过外网访问该tomcat的Manager App报403错误 原因是因为tomcat进行了ip限制,导致虚拟机中能够正常进入mana ...
- Tomcat 访问manager app报403 解决方案(虚拟机可以正常使用,外面访问报错)
虚拟机中Tomcat启动后,可以访问项目(虚拟机里面和外面都可以).虚拟机中能够正常进入manager app进行热部署工作,但是在外面能访问tomcat首页,点击manager app报403错误. ...
- Tomcat 访问 Manager App,Host Manager
1.启动tomcat,在浏览器输入:http://localhost:8080/ 2.配置tomcat-users.xml 文件 在主目录的cong文件夹下找到tomcat-users.xml 文件 ...
- Tomcat学习笔记 - 错误日志 - Tomcat访问Manager apps出现401 Unauthorized错误
原因是配置文件中未指定管理员身份. 打开tomcat>conf>tomcat-user.xml文件,添加如下代码: <role rolename="admin-gui&qu ...
- tomcat访问manager报404;server.xml中配置了Context path
<Context path="" docBase="crm" debug="0" reloadable="true" ...
- 开启Tomcat的manager页面访问
如何进入Tomcat的manager页面 一张图解决! 找到conf目录下的tomcat-users.xml文件,打开. <role rolename="admin-gui" ...
- Linux安装Tomcat,解决不能访问Manager App
在Windows环境中安装Tomcat时,只需要在Tomcat目录下/conf/tomcat-user.xml文件增加用户就可以了.在Linux系统中添加了username还是不能访问. 一.Li ...
- 关于tomcat访问managerapp出现403报错的解决方法
最近工作需要在tomct下部署war包并访问. 学了几种方法后想从Tomcat Web Application Manager去部署. 但是启动tomcat后浏览器http://localhost:8 ...
- Tomcat9 访问 Manager App
1.介绍 在配置好Tomcat,我们往往需要访问Tomcat的Manager以及Host Manager.就需要在tomcat-users.xml中配置用户角色来实现.在地址栏输入:localhost ...
随机推荐
- Python微服务实践-集成Consul配置中心
A litmus test for whether an app has all config correctly factored out of the code is whether the co ...
- React+antd+less框架搭建步骤,看吧,整的明白儿的
1.node版本 首先你要先看下你的node版本,如果小于10,建议升级到10及以上,因为低版本的 node 在自动创建 react框架时,有配置文件跟10及以上的有比较大的差异,而且需要增加.修改的 ...
- idea打开Run Dashboard
在springcloud中,通常会开启多个微服务.单个一个个开就很麻烦 如果没有发现,可以在工程目录下找.idea文件夹下的workspace.xml,在其中增加如下组件 <component ...
- javascript循环遍历数组输出key value
javascript循环遍历数组输出key value用$.each方法肯定不行的 所以采用如下方法<pre> markers = []; markers[2]=3; markers[3] ...
- Java字符串无意识的递归
Java中的每个类基本上都继承自Object,标准容器类自然也不例外.因此容器类都有toString()方法,并且重写了该方法,使得它生成的String结果能够表达容器本身,以及容器所包含的对象.例如 ...
- flask报错 KeyError: <flask.cli.ScriptInfo object at 0x000001638AC164E0>
(flask_venv) D:\DjangoProject\flask_test>flask db init Traceback (most recent call last): File &q ...
- AS3中 is,as,typeof的区别
AS3中 is,as,typeof的区别 . var my_num:Number=9;trace(typeof my_num);var my_object:Array=["语文", ...
- 「PKUWC2018/PKUSC2018」试题选做
「PKUWC2018/PKUSC2018」试题选做 最近还没想好报THUSC还是PKUSC,THU发我的三类约(再来一瓶)不知道要不要用,甚至不知道营还办不办,协议还有没有用.所以这些事情就暂时先不管 ...
- Codeforces Round #568 Div. 2
没有找到这场div3被改成div2的理由. A:签到. #include<bits/stdc++.h> using namespace std; #define ll long long ...
- HA 高可用集群概述及其原理解析
HA 高可用集群概述及其原理解析 1. 概述 1)所谓HA(High Available),即高可用(7*24小时不中断服务). 2)实现高可用最关键的策略是消除单点故障.HA严格来说应该分成各个组件 ...