解决阿里云环境中配置tomcat7可能出现的问题,阿里tomcat7


前提是安装好了tomcat,但是输入ip+端口无法访问,那么情况有一下几种

(1)可能防火墙没有关闭

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

(2)可能我们输入 firewall-cmd --state显示防火墙是关闭的,但是在在centeros7中防火墙改成了 iptables,所以我们可以关闭iptables

首先我们通过命令 iptables -L 查看iptables列表,如果出现下图有规则的情况,使用 iptables -F来关闭 \
为了保险起见,我们也可以将net表里的规则关闭,使用命令 iptables -t nat -F 来关闭
确认停用 selinux 使用命令 getenforce 查看状态,使用命令 setenforce 0 临时关闭,如果想永久关闭的话

(3)再关闭tomcat时候可能会出错,如果提示 8005端口可能没有启动,则可能是如下解决方案了

配置tomcat的时候 发现了一个问题,tomcat启动的时候,8005端口未启动,故无法关闭tomcat,后经查询解决了,记录一下子

tomcat启动的时候看不出异常,关闭的时候回报错类似:

Jul 17, 2015 9:47:54 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Could not contact localhost:8005. Tomcat may not be running.
Jul 17, 2015 9:47:54 AM org.apache.catalina.startup.Catalina stopServer
SEVERE: Catalina.stop:
java.net.ConnectException: Connection timed out
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:525)
at java.net.Socket.connect(Socket.java:475)
at java.net.Socket.(Socket.java:372)
at java.net.Socket.(Socket.java:186)
at org.apache.catalina.startup.Catalina.stopServer(Catalina.java:498)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.stopServer(Bootstrap.java:370)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:457)

即为8005端口未运行,使用命令netstat -ant 发现 没有找到8005端口

解决办法:

修改$JAVA_HOME/jre/lib/security/Java.security 文件中 securerandom.source 配置项:


securerandom.source=file:/dev/random
修改为:
securerandom.source=file:/dev/urandom(网上查询的结果,我改完这个就可以了,下面的未测试)
如果,仍然不生效,则修改为: file:/dev/./urandom

相关内容