配置Tomcat、maven远程部署调试总结。
注意:可以搞两个环境,一个本地tomcat 一个服务器上的tomcat ,然后都采用如下配置。这样就可以 在本地调试,调试好后,再发布到服务器端。非常方便。
===============================================以下的完整心得记录=========================================
1.修改/root/tomcat/conf/server.xml 由于聚石塔不开放8080端口,默认进行了网络拦截,而通常网站默认的都是80端口,聚石塔也开放了80端口。
所以为了能够访问,需要改成80端口.

这样之后可以这样访问了:http://121.41.xxx.xxx:80 或 http://121.41.xxx.xxx 如下图:

这个时候点击Manager App 是无法点开的会报错,同时我测试了下:

这个时候 点不开拉倒,但是我们如果想maven远程部署的话,这步还是必须的,按照他们的提示,我们直接配置tomcat-users.xml,增加角色 和 用户,如下图:


<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="wokao" password="liyuxin88" roles="manager-gui,manager-script"/>
具体意思可以去看官方的文档:

<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="wokao" password="liyuxin88" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-script,admin-gui"/>
增加后,重启tomcat 发现 点击 Manager App 依然是无法点开的,猜测可能是远程访问打不开,这个时候 本地访问 应该是可以打开的,但是我们通常时候 是需要 远程来访问的。到了 这步 我们先不管 能否
打开Manager App ,我们需要的是maven远程部署 既然服务器上的tomcat已经配置了一个账号和密码,那么我们本地的maven也是 需要配置下 账号和密码 以及maven插件的吧:
本地的maven配置如下:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>tomcat-maven-plugin</artifactId>
<configuration>
<url>http://121.41.xxx.xxx:80/manager/text</url>
<server>tomcat.server</server>
<path>/wokao3</path>
<username>wokao</username>
<password>liyuxin88</password>
</configuration>
</plugin>
账号密码,正规的做法是写在maven的 settings.xml里,id 的名字 与 pom.xml里的 server名字对应,但是我为了省事发现 直接写在pom.xml里也是可以的


这个时候开始 打包项目 ,开始远程部署:



这个时候发现依然是不行的,无法部署的 Manager App 也是访问不了,原因是 tomcat为了安全 禁止了外部访问 。
所以还需要一步,修改下 /root/tomcat/webapps/manager/META-INF/context.xml 让tomcat的管理后台 可以外部访问,一旦管理后台能外部访问,也就可以远程部署了。


<Context antiResourceLocking="false" privileged="true" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />
</Context>
这样之后 我们再来访问Manager App 如下图:

同样开始远程部署也是可以的。

关于程序发布第一版后,后来修改再次发布 不重启tomcat的情况下,立即生效的方法:

tomcat:redeploy 就行了 不重启tomcat的情况下 立即生效:






==============



配置Tomcat、maven远程部署调试总结。的更多相关文章
- maven远程部署到tomcat8服务器
maven远程部署到tomcat8服务器 环境准备 linux服务器一台 服务器安装JDK 服务器安装Tomcat 服务器Tomcat8配置 添加Tomcat权限 配置文件路径: tomcat/con ...
- 使用pycharm进行远程开发部署调试设置 与 远程部署调试是否必须使用远程主机的解释器?
远程开发部署调试目的: 配置pycharm远程部署调试主要用于本地代码与远程服务器上的代码进行同步,使得本地代码经过修改后,可以很容易的同步到远程服务器上.同时设置pycharm的解释器为远程服务器的 ...
- IDEA远程部署调试Java应用程序
IDEA远程部署调试Java应用程序 目录 IDEA远程部署调试Java应用程序 基本概述 准备工作 远程服务器准备 安装JDK 配置JAVA_HOME 项目准备 创建一个SpringBoot项目 创 ...
- 在idea中用tomcat远程部署调试
适用于生产环境下的调试. 1.catalina配置 在服务器的bin下创建setenv.sh,内容如下 1099是jmx,最后是服务器ip 2.启动tomcat ./catalina.sh jpda ...
- Eclipse+Maven远程部署项目到Tomcat中
使用maven的自动部署功能可以很方便的将maven工程自动打包并且部署到远程tomcat服务器,省去一些繁琐的操作,节省大量时间. 我使用的tomcat版本是8.5,tomcat7和tomcat8都 ...
- 配置tomcat的远程调试
参考文档: http://jingyan.baidu.com/article/0320e2c1f4ef6b1b87507b06.html http://flyer2010.iteye.com/blog ...
- 使用Idea远程部署调试tomcat
转自:http://blog.csdn.net/jane1229/article/details/52402119 远程服务器的配置: 1.在远程服务器安装jdk和tomcat 2.配置环境变量 PA ...
- 使用Apache Tomcat Maven插件部署运行 Web 项目
什么是Apache Tomcat Maven Plugin? Maven Plugin 是Apache Tomcat 提供的一个Maven插件,它可以在你没有tomcat容器时将任何一个war项目文件 ...
- linux 配置tomcat运行远程监控(JMX)
在实际使用中,我们经常要监控tomcat的运行性能.需要配置相应的参数提供远程连接来监控tomcat服务器的性能.本文详细介绍如何一步一步的配置tomcat相应参数.允许远程连接监控. 工具/原料 v ...
随机推荐
- 洛谷 P2261 [CQOI2007]余数求和 解题报告
P2261 [CQOI2007]余数求和 题意: 求\(G(n,k)=\sum_{i=1}^n k \ mod \ i\) 数据范围: \(1 \le n,k \le 10^9\) \(G(n,k)\ ...
- Spark集群基础概念 与 spark架构原理
一.Spark集群基础概念 将DAG划分为多个stage阶段,遵循以下原则: 1.将尽可能多的窄依赖关系的RDD划为同一个stage阶段. 2.当遇到shuffle操作,就意味着上一个stage阶段结 ...
- 【bzoj4559】成绩比较
Portal -->bzoj4559 补档计划 借这题补个档--拉格朗日插值 插值的话大概就是有一个\(n-1\)次多项式\(A(x)\),你只知道它在\(n\)处的点值,分别是\ ...
- uC/OS-II之入门与介绍20160525
说一下刚学习uCOS的心得1)首先强调一下实时操作系统(RTOS)的特点,最明显的是提供及时响应和高可靠性2)基于实施操作系统的应用程序设计中,其中很重要的一个概念是"任务",任务 ...
- 2016-2017 ACM-ICPC Southwestern European Regional Programming Contest (SWERC 2016) F dfs序+树状数组
Performance ReviewEmployee performance reviews are a necessary evil in any company. In a performance ...
- 装饰器--decorator3
装饰器添加返回值 import time def timer(func): def wrapper(*args,**kwargs): #wrapper包装的意思 start_time = time.t ...
- packet32 -- 打印packet32捕获的包
void PrintPackets(LPPACKET lpPacket) { ULONG i, j, ulLines, ulen, ulBytesReceived; char *pChar, *pLi ...
- numpy数组中冒号和负号的含义
numpy数组中":"和"-"的意义 觉得有用的话,欢迎一起讨论相互学习~Follow Me 在实际使用numpy时,我们常常会使用numpy数组的-1维度和& ...
- Xamarin Error:Could not find android.jar for API Level 23.
背景:打开别人Xamarin项目找不到android.jar文件 报错: 解决方案1:工具——Android——Amdroid SDK 管理器…出现以下窗口(根据需要的[API级别])勾选相应的Pla ...
- 关于拉格朗日乘子法与KKT条件
关于拉格朗日乘子法与KKT条件 关于拉格朗日乘子法与KKT条件 目录 拉格朗日乘子法的数学基础 共轭函数 拉格朗日函数 拉格朗日对偶函数 目标函数最优值的下界 拉格朗日对偶函数与共轭函数的联系 拉 ...