Linux部署Tomcat无法访问

前言

环境: RedHat7.0Tomcat7JDK7
安装配置成功之后,启动tomcat服务, 然后使用本地浏览器访问http://xx:xx:xx:xx:8080, 无法访问。

解决过程

首先怀疑是配置问题,终端输出:

echo $JAVA_HOME
echo $TOMCAT_HOME

一切正常,排除

然后怀疑是防火墙问题:
RHEL7 中使用了firewalld代替了原来的iptables,操作设置和原来有点不同:

查看防火墙状态: systemctl status firewalld 或者 systemctl is-active firewalld
启动防火墙: systemctl start firewalld
停止防火墙: systemctl stop firewalld
永久停用: systemctl disable firewalld
启用防火墙: systemctl enable firewalld

我选择关闭防火墙,然后重启tomcat服务,再次访问,发现还是不行。

其次怀疑是端口被占用:
修改tomcat/conf/server.xml,将8080端口号改为8090,重启服务,发现可以正常访问。

**那么**8080端口号被谁占用了呢?
使用netstat –apn | grep 8080,查看所有的进程和端口使用情况。发现下面的进程列表,其中最后一栏是PID/Program name 。
oracle 22725 oracle9i 3u IPv4 18621468 TCP RHEL3:6800 (LISTEN)
oracle 22725 oracle9i 4u IPv4 18621469 TCP RHEL3:6800->RHEL3:2174 (CLOSE_WAIT)
oracle 22725 oracle9i 8u IPv4 18621568 TCP RHEL3:6800->RHEL3:2175 (CLOSE_WAIT)
oracle 22725 oracle9i 9u IPv4 18621578 TCP RHEL3:6800->RHEL3:2176 (CLOSE_WAIT)
oracle 22726 oracle9i 3u IPv4 18621468 TCP RHEL3:6800 (LISTEN)
oracle 22726 oracle9i 4u IPv4 18621469 TCP RHEL3:6800->RHEL3:2174 (CLOSE_WAIT)
oracle 22726 oracle9i 8u IPv4 18621568 TCP RHEL3:6800->RHEL3:2175 (CLOSE_WAIT)
oracle 22726 oracle9i 9u IPv4 18621578 TCP RHEL3:6800->RHEL3:2176 (CLOSE_WAIT)

close_wait说明服务器被动断开连接,但断开的4次握手未进行完全

然后使用kill -9 PID将进程杀死, 问题解决。

其中, 我使用shutdown命令将机器关闭了,tomcat服务被动断开连接,导致出现close_wait这个状态,现在程序关闭之后原来所用端口依然被占用, 解决方法:

1) 优化服务器内核参数(/etc/sysctl.conf)
2) 做定时任务检查httpd进程数目,一旦发现httpd进程数目异常,就重启apache和tomcat, 建议在非工作时间进行检查重启,检查脚本:

#!/bin/sh
httpcount=`ps -ef|grep httpd|wc -l`
echo $httpcount
if [ $httpcount -gt 900 ]; then
  killall httpd
  killall java
  /cicro/wcm/bin/startas.sh
  echo "Restart successfully because of much useless process."
else
  echo "It is OK!"
fi
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值