本文讲解如何将我们已经编译好的JavaWeb工程在Linux环境下的Tomcat上进行部署,总体上的思路是和Windows下JavaWeb项目部署到tomcat差不多,具体步骤和命令如下。
注:部署之前必须已经在Linux上安装好JDK,具体如何在Linux上安装JDK见:Linux环境下安装JDK
1 准备工作
1、下载安装Xshell、Xftp(用于远程连接Linux主机,具体自行百度)
2、官网下载Linux下tomcat安装包,我用的是:apache-tomcat-6.0.45.tar.gz,直接点击可以下载,当然也可以直接到官网下载:http://tomcat.apache.org/
3、将JavaWeb项目打包,如我的项目是CucPayPerson,将webapp或者WebRoot下的文件打包成CucPayPerson.tar.gz(这是我的做法,还有通用做法是打war包)
2 往Linux环境上传工程代码和Tomcat安装包
1、创建工程部署目录:
mkdir /app/code
- 1
2、用xftp将打包代码文件CucPayPerson.tar.gz上传到以上目录
3、解压:
tar -xvzf CucPayPerson.tar.gz
- 1
4、最后Windows下和Linux下项目文件系统结构对比如下:
3 安装tomcat
1、新建tomcat服务器目录:
mkdir /app/tomcat
- 1
2、解压文件:
tar xvf apache-tomcat-6.0.45.tar.gz
- 1
到上面目录下,此时tomcat路径为:/app/tomcat/apache-tomcat-6.0.45
3、将tomcat文件夹:apache-tomcat-6.0.45 改为项目名字:CucPayPerson
mv /app/tomcat/apache-tomcat-6.0.45 /app/tomcat/CucPayPerson
- 1
这是因为Linux环境下部署的项目一般很多,这时我们会为每一个项目安装一个tomcat服务器,所以分别起一个名字,此时tomcat路径为:/app/tomcat/CucPayPerson,目录结构如下:
4 修改tomcat配置文件
主要更改server.xml中端口和工程部署路径
1、进入tomcat中conf文件夹下:
cd /app/tomcat/CucPayPerson/conf
- 1
2、修改server.xml内容,执行:
vi server.xml
- 1
然后按i进入修改:
修改以下三部分内容,修改完成后点击 esc,然后输入 :wq 这样就保存退出了。
修改shutdown停服务端口:
<Server port="9001" shutdown="SHUTDOWN">
- 1
修改web登陆端口:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
- 1
- 2
- 3
修改项目发布路径:
<Host>
<Context path="/per" docBase="/app/code/CucPayPerson" debug="0" privileged="true" reloadable="false" />
</Host>
- 1
- 2
- 3
说明:如果给多个项目安装了多个tomcat服务器,必须保证shutdown停服务端口和web登陆端口不同,项目发布路径就是上面所说项目代码路径
5 启动和停止tomcat服务器
1、进入tomcat启动目录:
cd /app/tomcat/CucPayPerson/bin
- 1
bin目录下有如下文件,可以看出来都是一些本文件,其中startup.sh和shutdown.sh分别是启动和停止脚本
2、执行启动命令:
nohup ./startup.sh &
- 1
./ 的意思是执行当前路径下脚本文件,nohup的意思是后台执行
3、停止命令
sh shutdown.sh
- 1
或:
./ shutdown.sh
- 1
6 启动过程中的跟踪日志命令
1、进入tomcat日志目录下:
cd /app/tomcat/CucPayPerson/logs
- 1
2、执行跟踪日志命令
tail -100f catalina.out
- 1
这个命令意思是动态刷新跟踪文件catalina.out的最后一百行
7 查看项目是否已启动
1、查询项目进程
ps -ef|grep CucPayPerson
- 1
2、测试服务是否已经启动成功
浏览器输入:http://10.1.7.88:8080/per,更改为Linux主机的IP或者域名。
8 强制杀项目进程
除了用tomcat的停止命令来停止项目服务外,还可以通过查进程ID暴力杀进程
1、首先得到项目的进程ID
netstat -anp | grep CucPayPerson
- 1
2、根据进程ID杀进程
kill -9 进程号
- 1
OVER
http://blog.csdn.net/trigl/article/details/51138640 //原文