Tomcat Web页面管理应用配置与报403解决方法

栏目: Java · 发布时间: 5年前

内容简介:大部分时候,我们的Tomcat服务器都不是部署在本机,那么怎么样不通过ftp/sftp方式来将war包部署到Tomcat容器呢?Tomcat有提供Web页面管理应用的功能。我们来看看怎么配置实现该功能。

大部分时候,我们的Tomcat服务器都不是部署在本机,那么怎么样不通过ftp/sftp方式来将war包部署到Tomcat容器呢?

Tomcat有提供Web页面管理应用的功能。

我们来看看怎么配置实现该功能。

进入tomcat默认页面时有“server status”、“manager app”、“Host manager”三个选项如图:

Tomcat Web页面管理应用配置与报403解决方法

图1

默认情况下,点击会跳转到401 Unauthorized报错页面

Tomcat Web页面管理应用配置与报403解决方法

图2

错误信息有提示请检查conf/tomcat-users.xml文件是否已配置。并且给出了配置示例(这里提醒大家,在任何时候出现错误页面,务必先仔细阅读错误信息,很多时候直接在错误信息中就能找到解决方案)

Tomcat Web页面管理应用配置与报403解决方法

图3

现在我们来配置manager app权限

进入tomcat下的conf目录,打开tomcat-users.xml文件

找到文件在末尾,在</tomcat-users>上一行插入如下配置:

<role rolename="manager-gui"/>

<user username="admin" password="admin1234" roles="manager-gui"/>

保存文件,退出。重启tomcat该配置即可生效(“server status”、“Host manager”配置类似,参照报错页面的提示信息进行配置即可)

重新访问tomcat地址,点击“manager app”,如果使用的是tomcat7以下(含7),这时会弹出一个登录框,输入前面配置的用户名密码即可登录,管理app。包括war包服务的启动、停止、reload、undeploy以及配置session的失效时间。

如果使用的是tomcat8以上,此时会报403 permission deny。

Tomcat8配置管理员后仍然报403解决方法:

修改conf/tomcat-users.xml

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

同时还需要修改,如无新建conf/Catalina/localhost/manager.xml 内容如下:

<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

无须重启tomcat即可生效。

正常可访问时的页面如下图:

Tomcat Web页面管理应用配置与报403解决方法

图4

接下来我们来看下怎么发布。

进入到manager app页面后,往下滑动页面到Deploy栏,如图:

Tomcat Web页面管理应用配置与报403解决方法

点击“select WAR file to upload”后面的“浏览”按钮,选择需要发布的war包后,点击“deploy”,war即可发布成功。部署是否成功,需要关注头部的“Message: ”内容。

但是如果该war包已经在服务器上部署,则需要在页面中找到该应用,点击“undeploy”先取消部署。

通过以上配置后,基本上在发布版本的时候不会有什么问题,增加这个配置的好处就是当持续集成的服务器与tomcat不在同一服务器时,可以通过配置,实现自动部署(当然方案不是唯一,也可以通过ftp、ssh方式部署,当时个人认为这是最简单的方式)

但是在实际的项目过程中我们会发现war包的大小往往达到几十上百M,这时发布会出现失败,原因是tomcat默认最大只允许上传50M的文件,这时候我们需要去修改webapps\manager\WEB-INF\web.xml文件

找到

<multipart-config>

<!-- 50MB max -->

<max-file-size>52428800</max-file-size>

<max-request-size>52428800</max-request-size>

<file-size-threshold>0</file-size-threshold>

</multipart-config>

一段(大概在53行),将max-file-size、max-request-size值增大即可。

注意:

如果tomcat需要开放到公网环境,建议将webapps目录删除

或者增加ip白名单过滤

配置可以参照tomcat官方文档进行配置http://tomcat.apache.org/tomcat-8.5-doc/manager-howto.html

里面有提到:

In addition to the password restrictions, access to the Manager web application can be restricted by the remote IP address or host by adding a RemoteAddrValve or RemoteHostValve. See valves documentation for details. Here is an example of restricting access to the localhost by IP address:

<Context privileged="true">
        <Valve  className="org.apache.catalina.valves.RemoteAddrValve"
                 allow="127\.0\.0\.1"/>
</Context>

更多 Tomcat 相关教程见以下内容

CentOS 6.6下安装配置Tomcat环境  https://www.linuxidc.com/Linux/2015-08/122234.htm

RedHat Linux 5.5安装JDK+Tomcat并部署 Java 项目  https://www.linuxidc.com/Linux/2015-02/113528.htm

Tomcat权威指南(第二版)(中英高清PDF版+带书签)  https://www.linuxidc.com/Linux/2015-02/113062.htm

Tomcat 安全配置与性能优化 https://www.linuxidc.com/Linux/2015-02/113060.htm

Linux下使用Xshell查看Tomcat实时日志中文乱码解决方案 https://www.linuxidc.com/Linux/2015-01/112395.htm

CentOS 64-bit下安装JDK和Tomcat并设置Tomcat开机启动操作步骤 https://www.linuxidc.com/Linux/2015-01/111485.htm

Ubuntu 16.04下安装Tomcat 8.5.9  https://www.linuxidc.com/Linux/2017-06/144809.htm

Tomcat中session的管理机制  https://www.linuxidc.com/Linux/2016-09/135072.htm

Tomcat 的详细介绍 请点这里

Tomcat 的下载地址 请点这里

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-05/158454.htm


以上所述就是小编给大家介绍的《Tomcat Web页面管理应用配置与报403解决方法》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python高效开发实战

Python高效开发实战

刘长龙 / 电子工业出版社 / 2016-10 / 89

也许你听说过全栈工程师,他们善于设计系统架构,精通数据库建模、通用网络协议、后端并发处理、前端界面设计,在学术研究或工程项目上能独当一面。通过对Python及其周边Web框架的学习和实践,你就可以成为这样的全能型人才。 《Python高效开发实战——Django、Tornado、Flask、Twisted》分为3部分:第1部分是基础篇,带领初学者实践Python开发环境和掌握基本语法,同时对......一起来看看 《Python高效开发实战》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具