在部署tomcat项目的时候,除了把war文件直接拷贝到tomcat的webapp目录下,还有一种方法可以浏览器中管理和部署项目,那就是使用tomcat manager。

默认情况下,tomcat manager是不可用的,因为它的用户角色和密码并没有正确配置。
这里采用的是tomcat7.0。打开conf文件夹下的文件tomcat-user.xml
tomcat原配置
<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="role1" password="tomcat" roles="role1"/>
-->
这个配置给注释掉了,但是使用默认的配置也将不起作用(不知是不是从早期版本继承下来的)
修改成
<role rolename="manager-gui"/>
<user username="tomcat" password="yourpw" roles="manager-gui"/>
 
其中manager-gui用来管理项目,输入用户名密码可登陆项目管理页面localhost:8080/manager/html
其他rolename还有<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
都有各自的用途。具体请查看 localhost:8080/docs/manager-howto.html
点击页面下方的“选择文件”,选中想要部署的war文件,点击deploy,即可部署项目,成功后会提示

Message: 
OK
 
如果war文件太大,则会报错 SizeLimitExceededException,这个时候,只需修改manager项目下的配置文件即可。

配置文件位置:$tomcat_home\webapps\manager\WEB-INF\web.xml

这里默认限制了最大只有50MB而已,然后根据自己的需要修改即可,之前我就是因为一个war文件太大而启动部署失败!

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

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

这时就修改为100MB,即104857600

修改后,重启tomcat服务器,再执行之前的部署操作。

 
 
今天还遇到一个undeploy的时候没有完全删除干净,导致重新部署失败:

应该是一些jar资源被锁定。要解决这个问题。只要在web/META-INF下建立一个context.xml文件。(哪个项目需要这样部署在哪个项目的META-INF下面新建)

<?xml version="1.0" encoding="UTF-8"?>
<Context reloadable="true" antiResourceLocking="true"></Context>
 把防止资源锁定的选项设置为true就可以了。

如果想配置一个虚拟路径,更不用麻烦的去server.xml中配置虚拟路径,可以直接在图像界面配置:

比如原来我们在server.xml中配置的虚拟路径:

<Context reloadable="true" path="/files/EmployeeIn" docBase="D:\images\employeeInPhotos" debug="0"/>

现在只需要

对于linux下的目录配置虚拟路径如下:

总结:

  以前往服务器部署都是将war包复制到服务器上,然后从服务器拷贝到webapps目录,现在可以直接在本地利用tomcat自带的manager项目部署项目(undeploy删掉旧的项目,)。manager项目也可以关闭开启项目,这对于虚拟目录比如获取图片的项目非常有用。

 manager项目在undeploy的时候会删掉webapps目录下的war包与目录。

 重新部署相当于直接往webapps目录下传文件(可以从本地管理远程的tomcat项目,也就是直接从本地部署到服务器,对linux服务器也有效,linux服务器注意代码中路径/与windows下\的区别)

【Tomcat】使用tomcat manager 管理和部署项目,本地部署项目到服务器的更多相关文章

  1. Tomcat默认工具manager管理页面访问配置

    Tomcat的默认工具manager配置,在很多的生产环境中由于基本用不到.或者是不太需要使用Tomcat默认的manager管理页面时一般都会把Tomcat的默认webapp下的内容给删除了,但是如 ...

  2. 使用tomcat manager 管理和部署项目

    在部署tomcat项目的时候,除了把war文件直接拷贝到tomcat的webapp目录下,还有一种方法可以浏览器中管理和部署项目,那就是使用tomcat manager. 默认情况下,tomcat m ...

  3. Linux 安装tomcat及tomcat自带远程部署项目与管理

    准备: 1.Linux系统 2.已经安装好jdk 开始: 选择要安装的tomcat版本:https://archive.apache.org/dist/tomcat/ 我这里使用的是tomcat 8. ...

  4. Tomcat热部署:Maven项目一键部署到Tomcat服务器 - 支持多环境

    参考:Eclipse中的Maven项目一键部署到Tomcat服务器 - 支持多环境部署 命令 debug模式设置关联源码 eclipse --> 项目右键 --> Debug As --& ...

  5. Tomcat使用Memcached Session Manager管理Session

    Tomcat使用Memcached Session Manager管理Session 废话不多说,直接进入主题.项目使用阿里云负载均衡+ECS服务器集群进行部署,Tomcat使用8.5版本.阿里云负载 ...

  6. Maven项目远程部署到Tomcat

    目录 Maven项目远程部署到Tomcat 一.Tomcat插件支持的目标 二.系统要求及插件引入 2.1 系统要求 2.2 引入插件 三.远程部署war到tomcat 3.1 添加tomcat管理角 ...

  7. 给新手--安装tomcat后username和password设置以及项目怎么部署在tomcatserver上

    安装后tomcatserver后.登陆首先就是让输入username和password.但是我们在安装tomcat的过程中好像没有让设置username和password,这时候可能有人就抓狂了.还有 ...

  8. jenkins实现maven项目自动化部署tomcat

    最近公司有用到jenkins实现自动化部署,这里我对新的东西也是比较感兴趣,就用了点时间尝试了一下,虽然网上有很多这种例子,但是可能有些细节我也走了一些弯路.在这里记录一下,方便下次用到. 实现环境: ...

  9. linux下tomcat的配置及项目的部署流程

    Java的安装配置 1. 在/etc/profile文件中配置相应的信息(如下) export JAVA_HOME=/usr/java/jdk1.6.0_20 export JRE_HOME=/usr ...

随机推荐

  1. python_109_切片补充和list函数

    #切片补充 a=[1,2,3,4,5,6,7,8] print(a[::2])#隔一个取一个元素 [1, 3, 5, 7] print(a[::-1])#将列表或元祖颠倒过来 [8, 7, 6, 5, ...

  2. Codeforces Round #272 (Div. 2)-C. Dreamoon and Sums

    http://codeforces.com/contest/476/problem/C C. Dreamoon and Sums time limit per test 1.5 seconds mem ...

  3. ES6新增rest的用法

    arguments类似Array但是并不是Array 而rest就是一个Array 用rest替代atguments eg:给数组排序 //arguments变量的写法: function sortF ...

  4. What is the difference between try/except and assert?

    assert only check if a condition is true or not and throw an exception. A try/except block can run a ...

  5. CS193p Lecture 4 - Foundation, Attributed Strings

    消息机制 调用一个实例(instance)的方法(method),就是向该实例的指针发送消息(message),实例收到消息后,从自身的实现(implementation)中寻找响应这条消息的方法. ...

  6. 【NOIP2017提高A组冲刺11.8】购物

    这个范围对DP不友好,和CF的一道C题非常像,贪心+后悔. 先使用k个优惠券购买k个q最小的(钱不购买则退出),同时把这k个p[i]-q[i]放入小根堆,然后将剩下的n-k个按p升序排序,记小根堆堆顶 ...

  7. 使用Hexo+Github搭建属于自己的博客

    工具:Visual Studio Code/MarkdownPad技术:Hexo+Github 创建Github项目 Github账户注册和新建项目,项目必须要遵守格式:账户名.github.io,不 ...

  8. MySQL学习点滴

    MySQL学习点滴 --分区表 概述: 分区功能并不是在存储引擎层完成的,因此很多存储引擎包括InnoDB, MyISAM, NDB等都支持分区功能.但也并不是所有的存储引擎都支持分区.在使用分区前, ...

  9. Python的两个爬虫框架PySpider与Scrapy安装

    Python的两个爬虫框架PySpider与Scrapy安装 win10安装pyspider: 最好以管理员身份运行CMD,不然可能会出现拒绝访问文件夹的情况! pyspider:pip instal ...

  10. LeetCode(108) Convert Sorted Array to Binary Search Tree

    题目 Given an array where elements are sorted in ascending order, convert it to a height balanced BST. ...