阿里云服务器Tomcat启动后 外网无法连接
一 查看catalina.out日志
首先查看catalina.out,查看启动是否有问题
tail catalina.out
如果出现如下错误日志,则是端口8080端口被占用
[root@cai logs]#tail catalina.out at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:342) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473) 08-Feb-2021 03:56:07.814 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio-8080"] 08-Feb-2021 03:56:07.814 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Catalina] 08-Feb-2021 03:56:07.835 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio-8080"] 08-Feb-2021 03:56:07.837 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio-8080"]
使用查看使用8080端口的进程,然后使用kill终止对应进程
(netstat👉-a显示所有活动的TCP连接,以及正在监听的TCP和UDP端口
-n以数字形式表示地址和端口号
-p列出与端口监听或连接相关的进程)
netstat -anp|grep 8080
kill 进程号pid
在配置环境变量情况下,使用如下命令重新启动tomcat
startup.sh
使用curl命令测试,tomcat正常运行
curl localhost:8080
二 启动防火墙 配置端口
查看防火墙是否启动
service firewalld start
#没有启动时候的输出
[root@cai logs]#systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1)
启动防火墙
service firewalld start
开放8080端口号
firewall-cmd --zone=public --permanent --add-port=8080/tcp
使设置生效
firewall-cmd --reload
查看已经开放的端口,是否包含8080端口
firewall-cmd --list-all
三 阿里云服务器配置安全组规则
四 在浏览器输入 公网ip:8080