Tomcat配置外网管理 | Tomcat8通过网页远程IP登录管理页面 | (配置Host-Manager和Manager远程部署)

·

Tomcat8通过网页远程IP登录管理页面
 (配置Host-Manager和Manager远程部署)

操作系统: Windows 2008R2 / (Linux)
Tomcat版本:Tomcat8.5.27
JAVA版本:openjdk1.8.0_131
默认情况下,我们安装tomcat8.5之后,访问tomcat主页面,出现如下图所示界面:

当我们需要访问Server Status、Manager App或者Host Manager时,出现如下所示的错误:

401表示未授权,因为tomcat默认是不允许访问这几个页面的。根据提示,我们需要在tomcat安装目录下的conf/tomcat-users.xml配置文件中增加用户和用户角色。

        

 

 

 查询多方面资料后,发现这是Tomcat8.5之后的版本,已经不再支持直接远程登录,需要修改配置文件。

 

修改配置文件的方法

一、 修改tomcat-users.xml文件,增加管理员账号和密码

在 【Tomcat8安装目录】\WebApps\conf\tomcat-users.xml 文件中,倒数第二行中添加以下内容。
       ( Linux系统可能是在/usr/local/tomcat/conf/tomcat-users.xml 文件)

<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="123456" roles="manager-gui,admin-gui"/>

  

再次使用浏览器访问:

这次出现的是403连接拒绝。默认情况下,只能通过与Tomcat安装在同一台计算机上运行的浏览器访问Manager。根据提示信息,需要修改manager的status.xml文件,该文件在/usr/local/tomcat/webapps/manager/META-INF目录下。

 

二、 修改context.xml文件,破除非本机IP访问管理页面的限制(管理IP:由127.0.0.1改为所有IP),

 

在 【Tomcat8安装目录】\WebApps\host-manager\META-INF\context.xml   文件中 和  【Tomcat8安装目录】\WebApps\manager\META-INF\context.xml文件中  ,修改代码 <Context antiResourceLocking 下的配置:
   

 

 

       ( Linux系统的访问限制文件可能是在/usr/local/tomcat/webapps/host-manager/META-INF/context.xml 和 /usr/local/tomcat/webapps/manager/META-INF/context.xml )

 


需要修改的位置 (allow后面的值):

       

 

 

 修改内容:

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="^.*$" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

 allow="^.*$" />  //解释就是,允许所有的IP地址来管理。  之前默认是只允许127.0.0.1 本机管理。

直接将这一段注释也可以

 

<!--  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
                   <allow="^.*$" />   -->

 

    最后,请重启Tomcat服务(或tomcat下bin目录下的startup.bat);
    关闭浏览器,再次打开浏览器访问, 点击Tomcat管理按钮,提示输入Tomcat管理账号密码后即可正常使用。
     

 

 教程 完毕。

 

 

补充知识

在开发中让Tomcat不需要重启就能加载最新的配置:  

   为了在开发时,让tomcat能够自动重新加载我们修改过的代码和配置,需要对Tomcat的context.xml文件进行设置。

   在<context>标签中,加上reloadable属性,并且将值设为true

<Context reloadable="true">
    <!--注意: reloadable设为true,目的是为了方便开发阶段, 它会影响tomcat性能;当在正式部署时,需要改成false -->

 

 

 

 

 

 



·

 

posted @ 2020-02-16 19:50  亟待!  阅读(2105)  评论(0)    收藏  举报
……