1、下载Apache tomcat
在左边,可以选择下载各种版本的tomcat。根据服务器操作系统选择下载。Linux操作系统就下载tar.gz包。
我下载的文件名是:apache-tomcat-8.5.37.tar.gz
2、检查linux是否安装tomcat
输入rpm -qa|grep tomcat
查看下系统信息,确认是32位还是64位:uname -a
3、上传服务器、解压缩tomcat
使用WinSCP或者Xftp等工具将tar.gz压缩包上传到 /usr/local 目录中,以下操作命令都需要在root账户下操作。
进入目录解压安装包
进入目录:cd /usr/local
解压文件:
tar -zxvf apache-tomcat-8.5.37.tar.gz
将目录 apache-tomcat-8.5.37 重命名为 tomcat,方便一些
重命名文件:
mv apache-tomcat-8.5.37 tomcat8
4、配置环境变量
输入:vim /etc/profile 打开配置文件,按 i 进入编辑模式,在profile文件尾部 unset -f pathmunge 后面添加如下内容:
unset i unset -f pathmunge export JAVA_HOME=/usr/local/java/jdk1.8.0_221 export JRE_HOME=${JAVA_HOME}/jre export CATALINA_HOME=/usr/local/tomcat8 export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:${CATALINA_HOME}/bin export PATH=$PATH:${JAVA_PATH}:$PATH
编辑完之后,按Esc 并输入 :wq(小写) 保存并退出编辑,然后输入以下指令:source /etc/profile 刷新环境配置使profile文件立即生效
5、正常启动
运行 /usr/local/tomcat8/bin/startup.sh 就会启动tomcat,在浏览器中访问http://localhost:8080了,能看到如下界面,说明访问成功。
6、正常关闭
运行 /usr/local/tomcat8/bin/shutdown.sh 就会关闭tomcat
7、修改tomcat配置
进入 /usr/local/tomcat8/conf 目录修改server.xml中的tomcat端口
运行 vim server.xml,用“/8080”定位到8080端口。如下图:
可以修改端口,默认8080,然后按ESC键,然后按 :wq(注意有一个英文冒号),保存并退出。
8、在不同Linux系统中,操作指令会有细微的差别,Centos6防火墙相关命令:
service iptables status 查看防火墙状态
service iptables start 开启防火墙
service iptables stop 关闭防火墙
service iptables restart 重启防火墙
对于Centos7系统来说,只有使用下面的指令,才可以对Linux防火墙进行启停。
查看防火墙开放端口列表命令:firewall-cmd --zone=public --list-ports 开启防火墙8080端口 firewall-cmd --zone=public --add-port=8080/tcp --permanent 关闭防火墙命令:systemctl stop firewalld.service 禁止防火墙开机启动命令:systemctl disable firewalld.service 重新加载防火墙命令:firewall-cmd --reload
9、其他一些问题
启动以后,可以利用命令 ps -ef|grep tomcat 查看tomcat是否正常启动。
如果正常启动以后无法访问,可以先不修改8080端口,尝试用8080端口访问。如果可以通过8080端口正常访问,则说明80端口被其他应用占用。
或者使用 netstat -an|grep 8080 命令查看是否有程序占用8080端口。
10、设置tomcat开机自启
在 tomcat/bin 目录下面,增加 setenv.sh 配置,服务启动的时候会调用,同时配置java内存参数。
输入命令编辑:
vim /usr/local/tomcat/bin/setenv.sh
#add tomcat pid CATALINA_PID="$CATALINA_BASE/tomcat.pid" #add java opts JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"
增加tomcat.service,在/usr/lib/systemd/system目录下增加 tomcat.service
输入命令编辑:
vi /usr/lib/systemd/system/tomcat.service
[Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment='JAVA_HOME=/usr/local/java/jdk1.8.0_221/' Environment='CATALINA_PID=/usr/local/tomcat/tomcat.pid' Environment='CATALINA_HOME=/usr/local/tomcat/' Environment='CATALINA_BASE=/usr/local/tomcat/' Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' PIDFile=/usr/local/tomcat/tomcat.pid ExecStart=/usr/local/tomcat/bin/startup.sh ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s QUIT $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target
[unit]配置了服务的描述,规定了在network启动之后执行。
[service]配置了环境变量,JAVA_HOME,服务的pid,服务的启动,停止,重启,内存参数。
[install]配置了使用用户。
当需要启动多个tomcat时,复制多个tomcat安装文件在/usr/local/下,如/usr/local/tomcat2,并配置多个tomcat.service 如tomcat2.service,tomcat3.service 在配置中修改对应的路径即可。
因为配置pid,在启动的时候会在tomcat根目录生成tomcat.pid文件,停止之后删除。
同时tomcat在启动时候,执行start不会启动两个tomcat,保证始终只有一个tomcat服务在运行。
多个tomcat可以配置在多个目录下,使用不同的端口,互不影响。
设置开机自启
systemctl enable tomcat.service
启动 tomcat
systemctl start tomcat.service
systemctl 常用命令
其中.service 可以省略
查看全部服务命令:
systemctl list-unit-files --type service
查看服务:
systemctl status name.service
增加开机启动:
systemctl enable name.service
启动服务:
systemctl start name.service
停止服务:
systemctl stop name.service
重启服务:
systemctl restart name.service
删除开机启动:
systemctl disable name.service