在信息技术领域,维护老旧系统是一项常见但充满挑战的任务,本文将详细探讨如何在已经停止官方支持的 CentOS 6.2 系统上安装和配置 Apache Tomcat 应用服务器,尽管 CentOS 6.2 已是一个古老的版本,但了解其上的部署过程对于遗留系统的维护、特定环境的兼容性测试或学习目的依然具有价值,我们将遵循一个清晰、分步的流程,确保整个过程既安全又高效。
环境准备与前置条件
在开始安装 Tomcat 之前,必须确保系统环境满足其运行的基本要求,Tomcat 是一个 Java 程序,因此其核心依赖是 Java Development Kit (JDK)。
由于 CentOS 6.2 的官方 Yum 仓库早已失效,直接使用 yum update
或 yum install
命令会失败,首要任务是配置一个可用的软件源,CentOS 官方提供了 Vault 存档,我们可以利用它来安装必要的软件包。
需要修改 Yum 仓库配置文件,将 /etc/yum.repos.d/CentOS-Base.repo
文件中的 mirrorlist
注释掉,并启用 baseurl
,将其指向 Vault 地址。
# 备份原始文件 cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak # 编辑文件 vi /etc/yum.repos.d/CentOS-Base.repo
在文件中,将 [base]
, [updates]
, [extras]
等部分的 mirrorlist
行前加上 ,并取消 baseurl
行的注释,将其修改为类似 http://vault.centos.org/6.2/os/$basearch/
的地址,保存退出后,清理 Yum 缓存并重建。
yum clean all yum makecache
安装 JDK,对于那个时代的系统,OpenJDK 7 或 8 是比较合适的选择,这里我们以 OpenJDK 8 为例。
yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
安装完成后,需要配置 JAVA_HOME
环境变量,这是许多 Java 应用(包括 Tomcat)正常工作的关键。
# 查找 Java 安装路径 readlink -f $(which java) # 输出可能类似:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el6_9.x86_64/jre/bin/java # 编辑 /etc/profile 文件,在末尾添加 vi /etc/profile export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el6_9.x86_64 export PATH=$PATH:$JAVA_HOME/bin
使配置立即生效:
source /etc/profile
验证 Java 是否安装成功:
java -version echo $JAVA_HOME
下载与安装 Tomcat
为了避免使用 Yum 仓库中可能过时的 Tomcat 版本,推荐直接从 Apache Tomcat 官方网站下载最新的稳定版(或与项目需求匹配的版本),这里以 Tomcat 8.5 为例,它兼容 JDK 8。
# 进入临时目录 cd /tmp # 下载 Tomcat wget https://archive.apache.org/dist/tomcat/tomcat-8/v8.5.78/bin/apache-tomcat-8.5.78.tar.gz # 解压到 /usr/local 目录 tar -xzvf apache-tomcat-8.5.78.tar.gz -C /usr/local/ # 为了方便管理,创建一个软链接或重命名目录 cd /usr/local ln -s apache-tomcat-8.5.78 tomcat
出于安全考虑,不建议以 root 用户运行 Tomcat,我们创建一个专用的系统用户来运行它。
# 创建一个名为 tomcat 的系统用户,无登录权限 useradd -r -s /bin/false tomcat # 将 Tomcat 目录的所有权赋予 tomcat 用户 chown -R tomcat:tomcat /usr/local/tomcat
配置 Tomcat 服务
CentOS 6 使用 System V init 系统,而不是现代的 systemd
,我们需要创建一个 init 脚本来管理 Tomcat 服务的启动、停止和重启。
在 /etc/init.d/
目录下创建一个名为 tomcat
的文件:
vi /etc/init.d/tomcat
粘贴到文件中。CATALINA_HOME
的路径需要与你的实际安装路径一致。
#!/bin/bash # description: Tomcat Start/Stop/Restart # processname: tomcat CATALINA_HOME=/usr/local/tomcat case $1 in start) /bin/su - tomcat $CATALINA_HOME/bin/startup.sh ;; stop) /bin/su - tomcat $CATALINA_HOME/bin/shutdown.sh ;; restart) /bin/su - tomcat $CATALINA_HOME/bin/shutdown.sh /bin/su - tomcat $CATALINA_HOME/bin/startup.sh ;; *) echo "Usage: $0 {start|stop|restart}" exit 1 ;; esac exit 0
保存文件后,赋予其执行权限,并将其添加到系统服务中。
chmod +x /etc/init.d/tomcat chkconfig --add tomcat chkconfig tomcat on
你可以使用 service
命令来管理 Tomcat 了。
service tomcat start
防火墙配置与验证
CentOS 6 默认使用 iptables
作为防火墙,Tomcat 默认监听 8080 端口,如果需要从外部访问,必须开放此端口。
# 开放 8080 端口 iptables -I INPUT -p tcp --dport 8080 -j ACCEPT # 保存 iptables 规则,以防重启后失效 service iptables save
验证 Tomcat 是否成功启动:
检查端口监听:
netstat -tlnp | grep 8080
你应该能看到类似
0.0.0:8080
的监听记录。访问默认页面:
在浏览器中输入http://<你的服务器IP地址>:8080
,如果看到 Tomcat 的默认欢迎页面,说明安装和配置已成功。
为了方便管理,可以配置 Tomcat 的管理后台,编辑 /usr/local/tomcat/conf/tomcat-users.xml
文件,在 <tomcat-users>
标签内添加一个具有管理权限的用户。
<role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="admin" password="your_strong_password" roles="manager-gui,admin-gui"/>
重启 Tomcat 服务使配置生效:
service tomcat restart
之后,你就可以通过 http://<你的服务器IP地址>:8080/manager/html
访问 Manager App,通过 http://<你的服务器IP地址>:8080/host-manager/html
访问 Host Manager 了。
关键目录结构概览
了解 Tomcat 的目录结构对于后续的部署和维护至关重要。
目录路径 | 描述 |
---|---|
/bin | 包含用于启动和停止 Tomcat 的脚本。 |
/conf | 存放所有的配置文件,如 server.xml , web.xml , tomcat-users.xml 。 |
/logs | 存放 Catalina 和其他应用程序的日志文件。 |
/webapps | Web 应用程序的部署目录,将 WAR 文件或应用目录放在此处即可自动部署。 |
/work | Tomcat 工作目录,用于存放编译后的 JSP 文件和 Servlet 类。 |
/temp | Tomcat 运行时产生的临时文件。 |
相关问答FAQs
启动 Tomcat 后,浏览器访问 8080 端口没有响应,日志也没有明显错误,可能是什么原因?
解答: 这是一个常见问题,通常与防火墙或网络配置有关,确认 iptables
防火墙规则是否已正确保存并生效,可以使用 iptables -L -n
命令查看当前规则列表,确保有一条 ACCEPT tcp dpt:8080
的规则,检查服务器所在网络环境是否有安全组或外部防火墙限制了 8080 端口的访问,如果是在云服务器上,请登录云服务商的控制台,检查安全组入站规则是否允许 8080 端口的流量,确认你访问的 IP 地址是否正确无误。
如何将我的 Web 应用程序(WAR 包)部署到这个 Tomcat 实例上?
解答: 部署 WAR 包非常简单,主要有两种方式:
- 自动部署:将你的 WAR 文件(
myapp.war
)直接复制到 Tomcat 的/usr/local/tomcat/webapps/
目录下,Tomcat 会自动检测到新文件并对其进行解压和部署,部署完成后,你可以通过http://<你的服务器IP地址>:8080/myapp/
来访问你的应用。 - 管理控制台部署:如果你已经按照上文配置了管理后台,可以访问
http://<你的服务器IP地址>:8080/manager/html
,在 “WAR file to deploy” 部分,选择你的 WAR 文件并点击 “Deploy” 按钮,这种方式更加直观,并且可以在控制台管理应用的启动、停止和卸载。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复