解决 centos 7 部署 tomcat 后外部不能访问应用(端口、防火墙)

本文详细介绍了在CentOS7上部署Tomcat服务后,如何解决外部无法访问的问题,包括检查和配置防火墙状态、添加及管理端口等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题背景

在 centos 部署了 tomcat 服务后,启动成功,通过浏览器访问应用时没有响应;
后发现能 ping 通 centos 机器的 ip,分析后得知防火墙未配置 tomcat 服务的端口;
配置后,通过浏览器成功访问。

解决问题

1、查看默认防火墙状态

firewall-cmd --state

这里显示未运行
在这里插入图片描述

2、检查防火墙的状态

systemctl list-unit-files|grep firewalld.service

这里显示 masked(如果显示 disabled,跳过本步骤)。
在这里插入图片描述
取消 masked 状态

systemctl unmask firewalld

在这里插入图片描述
再次检查防火墙状态,这里显示为 disabled
在这里插入图片描述

3、开启防火墙

systemctl start firewalld.service

开启防火墙

4、添加开放的端口

firewall-cmd --zone=public --add-port=8080/tcp --permanent
(永久的添加该端口。去掉--permanent则表示临时。)

添加开放的端口

5、重新加载

firewall-cmd --reload

重新加载

6、查看开放的端口

firewall-cmd --list-ports

查看开放的端口
这里 tomcat 服务的端口已经添加成功,外部访问8080端口可以成功

7、附其他命令

#启动一个服务
systemctl start firewalld.service

#关闭一个服务
systemctl stop firewalld.service

#将防火墙服务设置为开机自启动
systemctl enable firewalld.service

#关闭开机自动启动
systemctl disable firewalld.service

#查看端口
firewall-cmd --zone= public --query-port=80/tcp

#删除端口
firewall-cmd --zone= public --remove-port=80/tcp --permanent

8、参考

作者:cool_summer_moon
原文:https://blog.youkuaiyun.com/cool_summer_moon/article/details/78744009

作者:chen_yi_ping
原文:https://blog.youkuaiyun.com/chen_yi_ping/article/details/76690704

作者:莫小安
原文:https://www.cnblogs.com/moxiaoan/p/5683743.html

### CentOS 7 环境下离线部署 Tomcat 教程 #### 准备工作 为了在CentOS 7环境中成功离线安装和配置Tomcat服务器,需要准备一台已安装CentOS 7最小化系统的机器,并确保其防火墙和服务已被关闭。实验环境中的目标主机应具有静态IP地址192.168.10.1/24,且无需连接外部网络。 #### 下载并传输文件 由于是在离线状态下操作,因此需预先通过其他联网设备访问[Tomcat官方网站](https://tomcat.apache.org/)下载适合版本的Tomcat压缩包(例如:`apache-tomcat-9.x.xx.tar.gz`),以及对应的JDK软件包。之后借助WinSCP工具将这些文件上传至指定目录 `/usr/local/application/tomcat` 和 JDK 的相应位置[^3]。 #### 安装 Java 开发套件 (JDK) 确认已经拥有适当版本的JDK对于运行Tomcat至关重要。如果尚未完成此步骤,则应当先解压之前传入的JDK tarball文件,并按照官方文档指导设置好JAVA_HOME环境变量等必要参数[^4]。 #### 配置 Tomcat 进入存放Tomcat压缩包的位置执行如下命令来解压它: ```bash tar -zxvf apache-tomcat-*.tar.gz -C /opt/ ``` 这会把Tomcat提取到根目录下的/opt文件夹里形成一个新的名为 `apache-tomcat-x.y.z` 的文件夹结构。接着修改该路径内的conf/server.xml 文件调整端口号等相关设定以适应实际需求。 #### 启动与验证服务状态 为了让系统能够识别新加入的服务,在/etc/systemd/system/创建一个名为tomcat.service的新service unit file: ```ini [Unit] Description=Apache Tomcat Web Application Container After=syslog.target network.target remote-fs.target nss-lookup.target [Service] Type=forking Environment=CATALINA_PID=/opt/apache-tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/apache-tomcat ExecStart=/opt/apache-tomcat/bin/startup.sh ExecStop=/bin/kill -15 $MAINPID User=tomcat Group=tomcat [Install] WantedBy=multi-user.target ``` 保存更改后刷新守护进程配置并通过 systemctl enable tomcat 命令使能开机自启功能。最后启动Tomcat服务并检查其是否正常运作: ```bash systemctl daemon-reload systemctl start tomcat systemctl status tomcat ``` 此时应该可以在浏览器中输入http://localhost:8080 或者 http://<your_server_ip>:8080 来查看默认欢迎页面从而证明一切顺利[^2]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值