本文讲解如何将我们已经编译好的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

本文由bainiu.ltd摘自http://blog.csdn.net/trigl/article/details/51138640

Linux环境下在Tomcat上部署JavaWeb工程的更多相关文章

  1. ubuntu16.04环境下在docker上部署javaweb项目简单案例

    因为一些原因,接触到了docker,经过一番研究,总算是有了一些自己的看法,有什么不对的地方,希望多多指教. 废话不多说,首先我这里使用的虚拟机安装的是ubuntu16.04版本,其他版本应该也可以. ...

  2. JavaWeb入门——在Linux环境下安装Tomcat服务器

    JavaWeb入门——在Linux环境下安装Tomcat服务器 摘要:本文主要学习了如何在Linux环境下安装Tomcat服务器. 准备工作 检查Java环境变量 检查系统是否配置了Java的环境变量 ...

  3. window 和 linux 环境下杀死tomcat进程——也可以解决其他端口被占用的问题

    1.应用场景 在Windows或者linux操作系统中,我们在启动一个tomcat服务器时,经常会发现8080端口已经被占用的错误,而我们又不知道如何停止这个tomcat服务器. 2.window环境 ...

  4. Linux环境下搭建Tomcat+mysql+jdk

    Linux环境 1.下载并安装一个VMware workstation, 这个是虚拟机的平台(自行度娘下载~),虚拟机是在后面要在里面搭建Linux系统. 2.下载一个centos安装包,linux版 ...

  5. 在Linux环境下搭建Tomcat+mysql+jdk环境

    按照下面的步骤一步一步来搭建tomcat+jdk+mysql环境.   [Linux环境]------我搭建的是64位centos版本的linux系统 1.下载并安装一个VMware workstat ...

  6. Linux环境下Eclipse + Tomcat + MySQL 配置J2EE开发环境的方法

    1. 版本号信息 (1)CentOS 6.4发行版64位,uname -a 显演示样例如以下: Linux localhost.localdomain 3.11.6 #1 SMP Sat Nov 2 ...

  7. Hive学习之路(二)—— Linux环境下Hive的安装部署

    一.安装Hive 1.1 下载并解压 下载所需版本的Hive,这里我下载版本为cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载后进 ...

  8. Hive 系列(二)—— Linux 环境下 Hive 的安装部署

    一.安装Hive 1.1 下载并解压 下载所需版本的 Hive,这里我下载版本为 cdh5.15.2.下载地址:http://archive.cloudera.com/cdh5/cdh/5/ # 下载 ...

  9. 在Linux环境下,将Solr部署到tomcat7中,导入Mysql数据库数据, 定时更新索引

    什么是solr solr是基于Lucene的全文搜索服务器,对Lucene进行了扩展优化. 准备工作 首先,去下载以下软件包: JDK8:jdk-8u60-linux-x64.tar.gz TOMCA ...

随机推荐

  1. noip2015提高组day2解题报告

    1.跳石头 题目描述 一年一度的“跳石头”比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 N 块岩石( ...

  2. GoogLeNet系列解读

    GoogLeNet Incepetion V1 这是GoogLeNet的最早版本,出现在2014年的<Going deeper with convolutions>.之所以名为“GoogL ...

  3. 进程间通信之-信号signal--linux内核剖析(九)

    信号及信号来源 什么是信号 信号是UNIX和Linux系统响应某些条件而产生的一个事件.接收到该信号的进程会对应地採取一些行动.通常信号是由一个错误产生的. 但它们还能够作为进程间通信或修改行为的一种 ...

  4. 我理解的ios和android

    近期着手了几个android和ios的项目,如今说下我的几个对他们的理解 从设计上来讲.我觉得android 它更像是个网页,一个页面跳到另外一个页面,两者之间的关联不是非常大,仅仅能传递一些简单的參 ...

  5. Classification and logistic regression

    logistic 回归 1.问题: 在上面讨论回归问题时.讨论的结果都是连续类型.但假设要求做分类呢?即讨论结果为离散型的值. 2.解答: 假设: 当中: g(z)的图形例如以下: 由此可知:当hθ( ...

  6. k进制正整数的对k-1取余与按位取余

    华电北风吹 天津大学认知计算与应用重点实验室 日期:2015/8/24 先说一下结论 有k进制数abcd,有abcd%(k−1)=(a+b+c+d)%(k−1) 这是由于kn=((k−1)+1)n=∑ ...

  7. ORA-07445 第一參数为:kkqljpmpr

      在版本号11.2.0.1.0上,在pl/sql developer中运行一条SQL会导致连接中断,这样的错误要到trace文件夹下找到错误日志文件,再定位.查了一下资料,是这个版本号的bug. D ...

  8. 翻译:A Tutorial on the Device Tree (Zynq) -- Part II

    A Tutorial on the Device Tree (Zynq) -- Part II 设备树结构 Zynq的设备树如下: /dts-v1/; / { #address-cells = < ...

  9. 【Android开发-8】生命周期,Activity中打开另外一个Activity

    前言:生命中有很多人陪伴自己走过一生中的某段旅程,仅仅是有些人仅仅是某阶段出现,有些人却陪伴自己非常久.就像小学.中学.高中.大学,那些以前以为会长久拥有的,当经历过天涯各地地忙碌于生活,或如意.或失 ...

  10. LeetCode(67)题解: Add Binary

    https://leetcode.com/problems/add-binary/ 题目: Given two binary strings, return their sum (also a bin ...