Tomcat(四):tomcat图形管理和身份认证

小说:开直通车价钱作者:纯海马更新时间:2019-03-21字数:44834

对此,黑纱少女给出的解释也很简单。恶人也分三六九等,只有真正强大的恶人,才能在这堕落的乐园中享乐。至于没用的废物,是无权享受这些的。

零钱通会亏损本金吗

泰坦撇了撇嘴。“不可能?在刚才他攻击的第二拳之前。你能想到他会把你震退三步么?你不是还退了?你怎么知道他就没有绝招攻击第三拳?让你这老小子吃个大亏。”
到了树前,老君道:“这树也不容易,被抢来夺去的,哪里都住不安稳。”

普贤怎能见文殊吃亏,取出金刚杵接下了牛魔王,四人便在天上混战到一处。牛魔王今日怒极,每招每式皆不留后路,普贤那金刚杵击在他身上,也只如无事一般,他心中盘算,但叫我击中你一下,堂堂菩萨便颜面扫地。

Tomcat(四):tomcat图形管理和身份认证


tomcat和大多数服务程序的管理不一样,tomcat更适合使用图形管理界面进行管理,例如在不停止tomcat的情况下动态部署新的webapp或重新加载webapp。如果不使用图形管理工具,tomcat虽然也可以配置自动部署(autoDeploy="true"),但我们却无法掌握它重新部署的时刻。

图形管理工具的官方手册:Manager App HOW-TO

直接在浏览器中输入tomcat所在机器的ip地址及其connector监听端口,即可进入tomcat的图形管理界面,也是欢迎界面。这个欢迎页面是tomcat engine中的默认Host组件localhost提供的页面,该资源的路径为$catalina_home/webapps/ROOT/index.jsp。

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

这3个按钮对应的是tomcat默认就安装好的3个管理工具:状态查看工具、webapp管理工具(非常重要)和虚拟主机管理工具。其中前2个工具都由名为manager的webapp提供,第三个工具由名为host-manager的webapp提供,因此后文将认为只提供了两个管理程序:manager和host-manager。它们的路径都在webapps目录下。

[root@xuexi tomcat]# ls webapps/
docs  examples  host-manager  manager  ROOT

点击这3个按钮,分别可以进入对应的管理界面。但第一次点击,会出现"403 Access denied"错误,并提示要去配置conf/tomcat-users.xml,添加相应权限的角色。

对于这两个管理程序而言,总共有以下几种预定义角色:其中后两项角色是上一图中"Host Manager"需要的角色。

  • manager-gui - allows access to the HTML GUI and the status pages
  • manager-script - allows access to the text interface and the status pages
  • manager-jmx - allows access to the JMX proxy and the status pages
  • manager-status - allows access to the status pages only
  • admin-gui - allows access to the HTML GUI
  • admin-script - allows access to the text interface

对于使用manager-gui角色的用户,强烈建议不要再为其赋予manager-script和manager-jmx角色。

这些角色名称rolename已经预定义在各管理程序内的web.xml中:

[root@xuexi tomcat]# grep "role-name" webapps/manager/WEB-INF/web.xml
       <role-name>manager-gui</role-name>
       <role-name>manager-script</role-name>
       <role-name>manager-jmx</role-name>
       <role-name>manager-gui</role-name>
       <role-name>manager-script</role-name>
       <role-name>manager-jmx</role-name>
       <role-name>manager-status</role-name>
    <role-name>manager-gui</role-name>
    <role-name>manager-script</role-name>
    <role-name>manager-jmx</role-name>
    <role-name>manager-status</role-name>

[root@xuexi tomcat]# grep "role-name" webapps/host-manager/WEB-INF/web.xml 
       <role-name>admin-script</role-name>
       <role-name>admin-gui</role-name>
    <role-name>admin-gui</role-name>
    <role-name>admin-script</role-name>

因此,在各管理程序的身份验证文件中可以直接引用这几个名称。那么如何配置身份验证,使得只有通过验证的用户才能使用这些管理工具?根据前面的错误页面提示,只需在$catalina_home/conf/tomcat-user.xml中配置即可。

例如,使用预定义好的角色进行配置。

<user username="malongshuai" password="123456" roles="manager-gui,admin-gui"/>

再重启tomcat即可。但是,这样的配置在tomcat 7版本能成功,在tomcat8上不会成功。查看catalina.home下的.RUNING文件,提示如下内容:

For example, the standard manager web application can be kept in
CATALINA_HOME/webapps/manager and loaded into CATALINA_BASE by using
the following trick:

 * Copy the CATALINA_HOME/webapps/manager/META-INF/context.xml
   file as CATALINA_BASE/conf/Catalina/localhost/manager.xml

 * Add docBase attribute as shown below.

The file will look like the following:

  <?xml version="1.0" encoding="UTF-8"?>
  <Context docBase="${catalina.home}/webapps/manager"
    antiResourceLocking="false" privileged="true" >
    <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127.0.0.1" />
  </Context>

它要求我们将CATALINA_HOME/webapps/manager/META-INF/context.xml复制到CATALINA_BASE/conf/Catalina/localhost/manager.xml,并修改其内容。既然知道了操作过程,所以在tomcat 8中也就不用去复制了,这里直接创建文件并向里面写入内容即可,注意文件名一定不能错误。

[root@xuexi tomcat]# mkdir -p conf/Catalina/localhost
[root@xuexi tomcat]# cat conf/Catalina/localhost/manager.xml    
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="${catalina.home}/webapps/manager" 
        antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="^.*$" />
</Context>

此处allow定义的是允许所有主机访问此管理状态页面。还可以使用allow="127.0.0.1"定义只有本机才能访问,allow="192.168.100.*"定义只有192.168.100网段的主机才能访问。

定义了manager.xml文件后,也仅能访问前两个页面,因为前两个页面是manager程序提供的,访问时需要在uri中使用/manager,或直接点击上面的按钮。以下是管理webapp的图形管理工具页面,从图中可以看出,可以轻松管理某个webapp的启动、停止、部署、重新部署、部署本地项目等。

第三个页面是管理虚拟主机的图形页面,访问时的uri部分是/host-manager。但要使用它,也需要将context.xml复制到特定路径下,并修改一点内容。如下:

[root@xuexi tomcat]# cp conf/Catalina/localhost/manager.xml conf/Catalina/localhost/host-manager.xml
[root@xuexi tomcat]# sed -i s/manager/host-manager/ conf/Catalina/localhost/host-manager.xml

下图是虚拟主机的管理页面。

以上是将文件manager.xml或host-manager.xml复制到CATALINA_BASE/conf/Catalina/localhost/下,这是管理所有虚拟主机,如果想要单独管理某虚拟主机,则可以将文件按照$CATALINA_BASE/conf/[enginename]/[hostname]路径进行复制。

 

回到Linux系列文章大纲:http://www.cnblogs.com/f-ck-need-u/p/7048359.html
回到网站架构系列文章大纲:http://www.cnblogs.com/f-ck-need-u/p/7576137.html
回到数据库系列文章大纲:http://www.cnblogs.com/f-ck-need-u/p/7586194.html
转载请注明出处:http://www.cnblogs.com/f-ck-need-u/p/8409723.html

注:若您觉得这篇文章还不错请点击右下角推荐,您的支持能激发作者更大的写作热情,非常感谢!

当前文章:http://0477auto.com/play/oh3jzjqwtp.html

发布时间:2019-03-21 02:28:46

共建共治共享 海丝商报 怎么申请批量支付宝 玩赚联盟下载安装 云赚平台 京东物流加盟代理官网 淘宝返佣金app有哪些 微店代理怎么赚钱 儿时零食小吃微商代理

电脑跑分16万算好么 钱罐子金服最新公告 电商金钱橘平台 赚客挂机为什么不能加客服 赚多多战国辉的资金真的被冻结了吗 在家做手工赚钱好项目 天天去闻赚钱是真的吗 神武3 神武币 荆门威客网2018 毕业能够去干嘛 胶州信息港兼职招聘 可以赚rmb的网络游戏 美嘛兼职怎么加入 手机不用投资赚钱方法 淘宝客服兼职在哪里找 网上有哪些兼职项目? 网上赚点小钱的方法 阅读赚钱软件收徒 挣佣金的软件

编辑:邓戏密王

我要说两句: (0人参与)

发布