基于阿里云CentOS安装Tomcat

Tomcat简介

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。

安装准备

  • CentOS
  • xshell, putty, xftp等软件(这些软件的使用请自行Google或百度)
  • 安装好JDK,并配置环境变量,这里不再赘述,有需要的可以参考我之前写的博客(传送门
  • Apache Tomcat安装包,建议选择7或8这两个版本,不要选择最新的或者很久的版本(下载地址),本次安装我们采用tar包的方式来安装

开始安装

上传安装到服务器的目录下

首先通过 xftp 上传tomcat安装包到服务器上,目录可以自己选择,我这里选择的是 /usr/tomcat/,tomcat文件夹需要自己新建,本来是不存在的

解压安装包到某个目录

然后就是解压安装包到某个目录,要是觉得麻烦,就直接解压到当前目录

tar -zxvf apache-tomcat-8.5.31.tar.gz  

要是想解压到指定的目录下,那么可以这样,这条命令的意思就是解压到 /usr/local/tomcat,tomcat这个
文件夹需要自己新建

tar -zxvf apache-tomcat-8.5.31.tar.gz -C /usr/local/tomcat/

编辑setclasspath.sh

解压完成之后,我们进入解压后的 tomcat下的bin文件夹,使用vi编辑器编辑 setclasspath.sh 这个文件,在文件末尾加入以下内容,用来指定tomcat启动时使用的jdk,编辑完成之后 :wq保存。

1
2
export JAVA_HOME=/usr/java/jdk/jdk1.8.0_112
export JRE_HOME=/usr/java/jdk/jdk1.8.0_112/jre

启动Tomcat

完成了以上,我们就可以启动Tomcat了。如果8080端口没有被占用的话,那么tomcat就应该启动成功了,如果想通过外网测试tomcat有没有启动成功,需要在 阿里云控制台安全组centos自带的防火墙 开放相应的端口,比如说 8080,只有开放了相应的端口,tomcat才能被外网访问。

  1. 启动tomcat
/usr/local/tomcat/bin/start.sh
  1. 关闭tomcat
/usr/local/tomcat/bin/shutdown.sh

Tomcat默认端口被占用

如果启动Tomcat的时候,发现端口已经被占用了,我们可以先检查Tomcat的端口被哪个进程占用了

netstat -tunlp | grep 8080 #查看占用8080端口的程序

如果这个占用端口的进程无关紧要的话的,我们就可以通过命令强行终止这个进程
查找占用该端口的进程

kill -9 占用该进程的程序的pid #比如图片中占用80端口的程序的pid是 3685,那么我们就可以这样来终止我们的进程
kill -9 3685

终止占用Tomcat需要使用端口的进程以后,我们就可以重新启动Tomcat
但是如果我们占用这个Tomcat的端口的程序很重要不能被终止怎么办,这个时候我们强行终止可能就会有其它错误
为了保证服务器的稳定运行,我们可以通过修改Tomcat的端口来避免终止重要的进程

  1. 进入 /usr/local/tomcat/conf 这个文件夹下,找到 server.xml 这个文件
  2. 使用vi修改Tomcat默认的端口

    1
    2
    3
    4
    <Connector executor="tomcatThreadPool"
    port="8081" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" />
  3. 修改完之后保存并退出,然后重启Tomcat,这个时候Tomcat就可以正常启动了。

显示评论