分析:netstat -an查看到大量的80端口进程僵死,重启tomcat.tomcat启动失败,网页依然无法打开.
停止tomcat进程shutdown.sh,停止tomcat后telnet 127.0.0.1 80,发现80端口依然可用。netstat -an|grep 80 查看发现有许多80端口进程在里面,使用kill pid命令终止进程,无用。使用lsof -i :80|grep -v "PID"|awk '{print "kill -9",$2}'命令后所有80端口进程删除。重新启动tomcat,系统正常运行。不过为什么tomcat在关闭时却不能将80端口的进程一并关闭的原因需要分析一下。
[root@gzcourt bin]# netstat -an |grep 80
tcp 0 0 ::ffff:127.0.0.1:8005 :::* LIST
EN
tcp 0 0 :::8009 :::* LIST
EN
tcp 0 0 :::80 :::* LIST
EN
tcp 0 0 :::8080 :::* LIST
EN
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:202.160.179.12:36057 TIME
_WAIT
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:202.160.178.15:39176 TIME
_WAIT
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:55001 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:3516 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:55037 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:3518 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:61.135.162.208:57893 TIME
_WAIT
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:210.72.4.122:39196 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:59.32.124.136:22529 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:55222 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:218.20.57.173:3510 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:59.32.124.136:22530 ESTA
BLISHED
tcp 0 0 ::ffff:172.16.1.153:80 ::ffff:210.72.4.122:39198 ESTA
BLISHED
unix 3 [ ] STREAM CONNECTED 6880 /tmp/.X11-unix/X0
# lsof -i :80|grep -v "PID"|awk '{print "kill -9",$2}'|sh
以上脚本可以清除80端口的进程
解决方案:linux 下将tomcat的server.xml的端口改为80后以tomcat身份无法启动tomcat。
在redhat上启动tomcat(将server.xml中的端口改为80)
su – tomcat -c "$CATALINA_HOME/bin/startup.sh"
后出现:Catalina.start: LifecycleException: null.open: java.net.BindException: Permission denied:80
这是因为只有root用户才可访问1024以下的端口。
解决方法:重将server.xml中的端口改为8080
然后:iptables -t nat -A PREROUTING -p tcp –dport 80 -j REDIRECT –to-port 8080
(如果用到443,也相应执行以上方法)
即可。
分享到:
相关推荐
需要注意的是,在重新启动 Tomcat 之前,需要确保 Tomcat 已经关闭,否则可能会报端口被占用异常。此外,在启动 Tomcat 之前,需要确保正确地登录 Linux 系统,并正确地进入 Tomcat 的目录。 重新启动 Tomcat 需要...
### 修改Tomcat端口为默认80端口 #### 知识点概述 Apache Tomcat 是一款免费开源的Servlet容器,它可以作为独立的应用服务器运行Java Web应用,也可以与其他Web服务器如Apache HTTP Server或Microsoft IIS结合使用...
- 端口被占用:修改`server.xml`中端口设置,并确保没有其他服务使用相同端口。 - 访问速度慢:优化Java堆大小设置,如在`$CATALINA_HOME/bin/catalina.sh`中增加 `-Xms` 和 `-Xmx` 参数。 通过以上步骤,你已经...
3. **检查端口占用情况**: 如果上述步骤仍然无效,你需要进一步检查哪个进程占用了8080端口。在命令行中输入`netstat -ntulp | grep 8080`,这会显示所有使用8080端口的进程及其PID(进程ID)。例如,如果看到PID...
在某些情况下,可能会遇到Tomcat的某个端口被占用但进程却找不到的情况。这时可以尝试通过端口号找到对应的PID: ```bash netstat -anp | grep ``` 假设我们知道Tomcat占用的端口是9217,则可以使用: ```...
同时,这个方法也可以应用到其他服务或应用遇到类似端口占用问题的场景,只需要替换相应的端口号和配置文件即可。在日常运维工作中,了解如何处理端口冲突是至关重要的,这能帮助快速恢复服务并避免不必要的停机时间...
在Linux环境下启动多个Tomcat服务器是一项常见的需求,尤其当需要在同一台机器上运行多个独立的应用程序时。本文将详细介绍如何在Debian 6系统中成功配置并启动多个Tomcat实例。 #### 二、环境配置 **2.1 环境准备*...
本文将详细介绍如何在Linux系统下让Tomcat使用80端口,以及如何通过iptables实现端口转发。 首先,需要理解的是,1024以下的端口在Linux系统中被视为特权端口,只能由root用户或以root权限运行的服务来绑定。由于...
在某些情况下,例如默认端口已被其他服务占用或为了安全考虑,我们可能需要修改Tomcat的监听端口。将Tomcat的端口改为9090,可以通过修改`conf/server.xml`文件中的`<Connector>`标签来实现。在`port`属性中设置为...
今天发现服务器上Tomcat 8080端口起不来,老提示端口已经被占用。 使用命令: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程。 使用命令: netstat –apn 查看所有的进程和端口使用情况。发现下面的...
Linux下的Tomcat 7.0是一个广泛使用的开源Java应用服务器,尤其适合部署Web应用程序。它在Linux操作系统上运行,提供了一个稳定、高效且灵活的平台。这个“linux-tomcat7.0”压缩包是专门为64位Linux系统设计的,...
请注意,如果8080端口被其他服务占用,你可能需要修改Tomcat的默认端口。在`conf/server.xml`文件中找到`<Connector>`元素并更新`port`属性,例如更改为`8859`,然后重启Tomcat。 在Linux环境下部署Tomcat和JDK,...
1. **端口冲突**:如果Tomcat无法启动,可能是因为8080端口被其他应用占用。修改`conf/server.xml`文件中的`<Connector>`标签,更改端口号。 2. **环境变量问题**:确保`JAVA_HOME`环境变量设置正确,指向JDK的安装...
- **端口冲突**:如果无法通过`http://localhost:8080`访问Tomcat,默认情况下可能是8080端口被其他服务占用。可以通过修改`conf/server.xml`中的`Connector`元素的`port`属性来改变监听端口。 #### 七、总结 通过...
#### 四、修改Tomcat端口号 默认情况下,Tomcat使用8080端口。如果该端口已被占用或需要调整端口号,可以通过以下步骤进行修改: 1. **进入文件路径**: ```bash [root@Localhost]# cd /usr/tomcat/tomcat81/conf ...
例如,对于第一个Tomcat实例,你可以保留默认的8080端口,而对于第二个实例,则需要将其修改为其他未被占用的端口,如8081。 ### 三、总结 通过以上步骤,你可以在Linux系统上成功地配置和启动多个Tomcat服务器...
10. **监控与优化**:Linux系统提供了丰富的工具,如`top`、`htop`、`vmstat`等,用于监控Tomcat的内存使用、CPU占用等性能指标,以便进行性能调优。 以上是Tomcat10.1.9在Linux环境下安装和管理的基础知识,实际...
- 确保新选择的端口未被其他服务占用。 - 如果有防火墙设置,记得更新规则以允许新的端口通过。 - 如果在多台机器上部署多个Tomcat实例,确保所有机器的端口配置都不相同,避免网络冲突。 了解这些步骤后,你就...
总结来说,解决Tomcat端口占用问题的关键在于: 1. 使用`netstat`命令找出占用端口的进程。 2. 识别占用端口的进程ID。 3. 在Windows系统中,使用`taskkill`或任务管理器关闭进程;在Linux系统中,使用`kill`命令...