目录
(二)、注册Tomcat服务并设置开机自启动Tomcat服务
更多精彩博文详见:
一、Tomcat概述
Tomcat是Java领域最著名的开源Web服务器和Servlet容器,由Apache软件基金会维护。Tomcat实现了Java Servlet、JavaServer Pages (JSP)和WebSocket等规范,是部署和运行Java Web应用程序的核心工具之一。
(一)、Tomcat安装目录简介
Tomcat二进制安装包解压后,安装路径下会有如下的目录结构。
- bin目录:该目录下存放启动、关闭Tomcat服务等相关的二进制可执行文件。
- conf目录:该目录下存放所有Tomcat服务相关的配置文件。
- lib目录:该目录下存放Tomcat服务器的核心类库(JAR文件),若需要扩展Tomcat功能,也可将第三方类库复制到该路径下。
- logs目录:该目录下存放Tomcat服务运行相关的日志文件。
- webapps:该目录用于部署 Web应用,其中子目录ROOT是默认根应用,index.jsp即为我们访问http://localhost:8080/的默认页面。
- temp:该目录下保存应用运行过程中生成的临时文件。
- work:该目录下保存应用运行过程中编译生成的class文件。该目录可以删除,每次启动Tomcat服务器时会重建该目录。
(二)、Tomcat配置文件简介
Tomcat服务的配置文件都在conf目录下,下面介绍主要的配置文件。
1、server.xml文件
server.xml文件是Tomcat最核心的配置文件,主要用于定义Tomcat服务端口、连接器、虚拟主机等核心参数。该配置文件修改后,必须重启Tomcat服务才能使其生效。
例如,修改Tomcat服务端口的配置如下:
此处将Tomcat服务的端口由默认的8080端口修改为8888端口。
2、web.xml
web.xml文件主要用于配置默认Servlet、MIME类型映射、定义全局过滤器、监听器等。
3、context.xml
context.xml文件主要用于配置数据源、JNDI资源、定义全局会话管理策略等。
4、tomcat-users.xml
tomcat-users.xml文件主要用于配置用户认证,如定义管理员、角色权限等。
例如,新增用户的配置如下:
新增了admin用户,属于manager-gui角色。
5、logging.properties
logging.properties文件主要用于Tomcat日志输出格式、日志级别等相关的配置。
二、Tomcat安装部署
(一)、环境规划
- 服务器IP
Tomcat01:192.168.110.166
- 系统版本
CentOS Linux release 7.7.1908 (Core)
- 关闭防火墙
此处为方便演示,直接关闭防火墙。生产环境可以根据实际需求开通服务器防火墙策略。
systemctl stop firewalld
systemctl stop iptables
- JDK版本
作者当前服务器位数是64位,所以此处使用 jdk-21_linux-x64 版本,可以根据实际情况选择合适的版本。
二进制安装包官方下载地址:https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz
- Tomcat版本
此处使用 v11.0.6 版本,可以根据实际情况选择合适的版本。
二进制安装包官方下载地址:https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.6/bin/apache-tomcat-11.0.6.tar.gz
(二)、安装JDK
1、下载JDK二进制安装包
此处将二进制安装包下载至/usr/local/路径下。
[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz
2、解压JDK二进制安装包
将JDK二进制安装包直接解压在/usr/local/目录下即可。
[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# tar -zxvf jdk-21_linux-x64_bin.tar.gz
3、验证JDK是否安装成功
进入JDK二进制文件目录/usr/local/jdk-21.0.7/bin,执行java命令进行验证
[root@Tomcat01 ~]# cd /usr/local/jdk-21.0.7/bin
[root@Tomcat01 bin]# ./java -version
出现JDK版本信息,说明安装成功。
4、配置JDK环境变量
在/etc/profile文件中配置JDK的安装目录以及二进制文件目录。
- 配置JDK环境变量
[root@Tomcat01 ~]# vim /etc/profile
在文件的最后加入如下内容:
# JAVA
export JAVA_HOME=/usr/local/jdk-21.0.7
export PATH=$PATH:$JAVA_HOME/bin
- 使环境变量生效
[root@Tomcat01 ~]# source /etc/profile
- 验证配置
[root@Tomcat01 ~]# java -version
出现JDK版本信息,说明配置成功。
(三)、安装部署Tomcat
1、下载Tomcat二进制安装包
此处将Tomcat二进制安装包下载至/usr/local/路径下。
[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# wget https://dlcdn.apache.org/tomcat/tomcat-11/v11.0.6/bin/apache-tomcat-11.0.6.tar.gz
2、解压Tomcat二进制安装包
将Tomcat二进制安装包解压在/usr/local/目录下即可。
[root@Tomcat01 ~]# cd /usr/local/
[root@Tomcat01 local]# tar -zxvf apache-tomcat-11.0.6.tar.gz
3、配置JAVA_HOME参数
需要在/usr/local/apache-tomcat-11.0.6/bin/catalina.sh文件中加入JAVA_HOME参数,参数的值是JDK的安装目录。若不加此参数,将Tomcat服务注册成系统服务时,会导致服务启动失败。
[root@Tomcat01 ~]# vim /usr/local/apache-tomcat-11.0.6/bin/catalina.sh
加入如下内容:
export JAVA_HOME=/usr/local/jdk-21.0.7
4、启动Tomcat服务
- 启动Tomcat服务
[root@Tomcat01 ~]# cd /usr/local/apache-tomcat-11.0.6/bin
[root@Tomcat01 bin]# ./startup.sh
- 查看Tomcat服务8080端口是否启动
[root@Tomcat01 bin]# netstat -tnlp
可见8080端口在列表中。
- 查看Tomcat服务进程是否正常
[root@Tomcat01 bin]# ps -ef | grep -v "grep" | grep tomcat --color
或者
[root@Tomcat01 bin]# ps -ef | grep -v "grep" | grep java --color
可见Tomcat服务进程信息。
- 浏览器访问验证
在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/
可见Tomcat服务可以正常访问。
以上说明Tomcat服务安装成功!
5、关闭Tomcat服务
- 关闭Tomcat服务
[root@Tomcat01 ~]# cd /usr/local/apache-tomcat-11.0.6/bin
[root@Tomcat01 bin]# ./shutdown.sh
- 查看Tomcat服务8080端口是否关闭
[root@Tomcat01 bin]# netstat -tnlp
可见8080端口已经不在列表。
- 查看Tomcat服务进程是否关闭
[root@Tomcat01 bin]# ps -ef | grep -v "grep" | grep tomcat --color
或者
[root@Tomcat01 bin]# ps -ef | grep -v "grep" | grep java --color
可见已经没有Tomcat服务进程信息。
- 浏览器访问验证
在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/
可见Tomcat服务已经无法访问。
以上说明Tomcat服务已经关闭!
三、Tomcat注册系统服务(可选)
CentOS系统中使用systemd进行系统和服务的管理,可以根据需要将相关的服务进程配置成守护进程,并通过systemctl命令对守护进程进行监测和控制。
为了方便Tomcat服务的维护和管理,可以把Tomcat服务注册成系统服务,由systemd进行服务管理。
(一)、创建tomcat.service文件
创建tomcat.service文件,通过systemd来管理Nginx服务。
[root@Tomcat01 ~]# cat > /usr/lib/systemd/system/tomcat.service << EOF
[Unit]
Description=The Tomcat Server
After=network.target remote-fs.target nss-lookup.target[Service]
Type=forking
ExecStart=/usr/local/apache-tomcat-11.0.6/bin/startup.sh
ExecStop=/usr/local/apache-tomcat-11.0.6/bin/shutdown.sh[Install]
WantedBy=multi-user.target
EOF
tomcat.service文件详解如下:
[Unit] #记录service文件的通用信息
Description=The Tomcat Server #Nginx服务描述信息
After=network.target remote-fs.target nss-lookup.target #Nginx服务启动依赖,在指定服务之后启动[Service] #记录service文件的service信息
Type=forking #标准UNIX Daemon使用的启动方式
ExecStart=/usr/local/apache-tomcat-11.0.6/bin/startup.sh #启动Tomcat服务
ExecStop=/usr/local/apache-tomcat-11.0.6/bin/shutdown.sh #关闭Tomcat服务[Install] #记录service文件的安装信息
WantedBy=multi-user.target #多用户环境下启用
(二)、注册Tomcat服务并设置开机自启动Tomcat服务
[root@Tomcat01 ~]# systemctl daemon-reload && systemctl enable tomcat
(三)、启动Tomcat服务
- 启动Tomcat服务
[root@Tomcat01 ~]# systemctl start tomcat
- 查看Tomcat服务状态信息
[root@Tomcat01 ~]# systemctl status tomcat
可见Tomcat服务是active状态。
- 查看Tomcat服务8080端口是否启动
[root@Tomcat01 ~]# netstat -tnlp
可见8080端口在列表中。
- 查看Tomcat服务进程是否正常
[root@Tomcat01 ~]# ps -ef | grep -v "grep" | grep tomcat --color
或者
[root@Tomcat01 ~]# ps -ef | grep -v "grep" | grep java --color
可见Tomcat服务进程信息。
- 浏览器访问验证
在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/
可见Tomcat服务可以正常访问。
以上说明Tomcat服务启动成功!
(四)、关闭Tomcat服务
- 关闭Tomcat服务
[root@Tomcat01 ~]# systemctl stop tomcat
- 查看Tomcat服务状态信息
[root@Tomcat01 ~]# systemctl status tomcat
可见Tomcat服务是failed状态。
- 查看Tomcat服务8080端口是否关闭
[root@Tomcat01 ~]# netstat -tnlp
可见8080端口已经不在列表中。
- 查看Tomcat服务进程是否关闭
[root@Tomcat01 ~]# ps -ef | grep -v "grep" | grep tomcat --color
或者
[root@Tomcat01 ~]# ps -ef | grep -v "grep" | grep java --color
可见已经没有Tomcat服务进程信息。
- 浏览器访问验证
在浏览器中访问Tomcat服务地址:http://192.168.110.166:8080/
可见Tomcat服务已经无法访问。
以上说明Tomcat服务已经关闭!










































1143

被折叠的 条评论
为什么被折叠?



