`

Linux下Tomcat 80端口被占用的解决办法

阅读更多

 

分析: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,也相应执行以上方法)

即可。

 

 

 

 

分享到:
评论
1 楼 lovejing007 2011-09-16  
我用的就是root的账户登录的,还是出现啦那种情况,我每次都是先kill

相关推荐

    启动多个tomcat

    linux下启动多个tomcat

    详解Linux查看程序端口占用情况

    今天发现服务器上Tomcat 8080端口起不来,老提示端口已经被占用。 使用命令: ps -aux | grep tomcat 发现并没有8080端口的Tomcat进程。 使用命令: netstat –apn 查看所有的进程和端口使用情况。发现下面的...

    Linux Centos7系统端口占用问题的解决方法

    服务器为Linux-Centos7系统 , 昨天发生了一个非常诡异的情况 , tomcat在已关闭的情况下 , 依然显示其8080端口被占用 , 最后定位到占用端口的进程 , 解决问题 ,下面话不多说了,来一起看看详细的介绍吧。 1.查看占用...

    Linux强制释放占用端口以及Linux防火墙端口开放方法详解

    在安装nginx,mysql,tomcat等等服务的时候,我们会遇到需要使用的端口莫名其妙被占用,下面介绍如何解决这类问题。 说到端口,还不得不提到防火墙,本文还会简单介绍如何配置防火墙开发端口。 Linux查看端口情况的...

    Linux下查看端口占用进程号,程序名的方法

    linux下查看端口占用情况: 1. 查看哪个进程占用了819端口: case9-sghfofo:/usr/local/cnbj/tomcat-bj/bin # lsof -i:859 运行后的结果: COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME java 24907 root 31u ...

    Jsp和PHP共用80端口整合Apache和Tomcat(访问时无需加端口号)

    目的: 整合Apache和Tomcat,使得Java工程和PHP工程都能共用80端口,访问网站时,无需在地址栏中加端口号。 环境说明: Linux CentOS 32位 Apache 2.2.2 Tomcat 7.0.37 准备工作: 下载mod_jk.so ...

    修改Tomcat服务器默认端口号的实现方法

    开放windows服务器端口(以打开端口8080为例)win7安装xampp提示windows找不到-n文件(安装成功后,443端口占用,apache服务器无法正常启动)的解决方案Windows服务器系统服务端口对照表在Linux 服务器下修改防火墙允许...

    vmware server 2.0.1 linux版中自带tomcat的server.xml文件

    由于在CentOS中安装vmware server 2.0.1后,vmware自带的tomcat默认配置会占用8080端口,导致自己安装的tomcat无法正常使用,因此修改了server.xml。本以为每次只要手工修改即可,但由于第二次修改碰到问题,改成...

    Nginx+Tomcat负载均衡

    我们需要在一台机器上跑 2 个不同的 tomcat ,避免出现端口被占用的情况,为了规范统一,我们修改全部tomca端口。分别找到tomcat6的1和2 的conf下的 server.xml。 修改Server端口 找到Server将: 改为 XXXX 在...

    Linux端口号与PID的互相查询

     首先myeclipse报错的时候会提示:“8009端口被占用”,那么你不得不依据此端口去查看该端口下运行的哪些进程  使用命令来查看当前系统下所运行的所有端口情况:sudo netstat -antup  注意:请在sudo的权限下...

    Linux查看端口、进程情况及kill进程的方法

    发现8080端口被PID为9658的Java进程占用。 进一步使用命令:ps -aux | grep java,或者直接:ps -aux | grep pid 查看 就可以明确知道8080端口是被哪个程序占用了!然后判断是否使用KILL命令干掉! 方法二:直接...

    Linux 系统下 tomca 启动过慢 以及dakaitomcat出现无法 访问的情况

    最近刚开始学习linux,安装了tomcat后 ,常常是打开Tomcat后,ip+端口号 访问不到, 网上百般搜索过后,有的说防火墙开启着 | | 端口号占用着 | | 没有完全关闭 种种 我都试了一遍 ,但··············...

    Linux 常用命令

    8. 查看端口是否被占用 9. 为服务器添加浮动ip 10. 启动ssh 11. 启动、关闭WebLogic 12. 启动、关闭Tomcat 13. 启动、关闭JBOSS 14. 重启Apache 15. 修改apache字符集配置文件 16. 进入管理员 17. 进程 18. 文件夹...

    中科方德服务器环境搭建.docx

    个人编写的环境搭建文档

    Linux学习新篇?常用命令和快捷键总结

    近刚接触Linux,整理了一些常用的命令和快捷键  Tab补全命令  当命令记不清了,输入记得的...  则表示被web服务占用,若为其他则是被其他程序占用,若使用停止服务无效,则可以用kill 10679杀死服务。  当要编辑

    性能测试实用linux 命令netstat等

    通过netstat可以查看网络连接、端口号等占用情况  查看进程和端口号相关:  1. 查看TCP/UDP端口:  netstat -tuoln  2. 查看进程名运行的端口号:  netstat -anp|grep 进程名  当需要监控某个服务的...

    IT运维之Linux服务器监控方案.doc

    系统负载、cpu使 用率、内存占用、磁盘空间、网络流量、端口、进程、apache或tomcat的连接数、mysq l的运行状态这些都是我想要监控的东西,但又能做到多少呢,我只能尽力而为了。要了 解服务器每时每刻的整体运行...

    kangle最新版linux安装包

    kangle的访问控制理念来自linux的iptables防火墙,kangle实现很多最小化的匹配模块和标记模块,通过组合,反转可以实现最复杂的需求;从而实现强大的访问请求控制(url,ip地址,连接数/网速限制,http头,时间控制,多种...

    MiinCMP 企业网站系统 v1.0.5 新浪云版.zip

    MiinCMP1.0.5 SAE新浪云版更新说明: ...在eclipse或netbeans下,新建WEB项目,导入Tomcat/lib库,或javaee API库,导入CMP/WEB-INF/lib下的类库 复制src源码到java源码目录,复制CMP下文件到WEB目录。

    服务器部署web项目(springboot为例)–持续更新

    3.xhell,xftp,mysql(linux5.7),tomcat7.0以上 1.首先选择服务器具体配置如下 2.选择-更多-安全组配置-添加安全组规则(端口号随意写,注意不要占用,入网,出网都需操作) 3.然后回到idea中(首先双击clean,...

Global site tag (gtag.js) - Google Analytics