腾讯云服务器tomcat端口无法访问
第一种情况:
如题:https://console.cloud.tencent.com/cvm/securitygroup 需要去这个地址设置安全组。
说实话,一句mmp不知当讲不当讲。使用说明这块太乱了。
当然更改了安全组和防火墙还是不行。于是我查看Tomcat的记录,发现:
/home/apache-tomcat-8.5.37/bin/catalina.sh: line 482: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.121-0.b13.el7_3.x86_64/bin/java: No such file or directory
很明显是环境变量配置的问题。原因是我前面安装图简单实用yum 安装而环境变量又是网上copy的三行代码,而自己根本没有仔细查看是否对不对。好吧,入坑一次。
当然这个问题通过查看tomcat的运行状态也可以看出来
ps -ef|grep tomcat
上图这个是有问题的
这个是正常的,也就是受java环境吧变量配置的影响。
实际安装的jdk信息和环境变量配置的对不上。于是修改了环境变量中java的版本信息,终于大功告成
修改环境变量在我上一篇博客中有说明
腾讯云部署javaWeb项目之一应用服务器
第二种情况:
输入命令 netstat -tunlp 可以看到8080端口根本就没开放,如何访问。
那么如何开启,因为Centos7以上用firewalld代替了iptables,也就是说firewalld开通了8080端口应该就行了。
1.查看防火墙状态。
firewall-cmd --state #查看防火墙状态。
得到结果是running或者not running
如果没开启
systemctl start firewalld
2.在running 状态下,向firewall 添加需要开放的端口
firewall-cmd --permanent --zone=public --add-port=8080/tcp #永久的添加该端口。去掉--permanent则表示临时。
与之对应关闭的命令为
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
3.加载配置,使得修改有效。
firewall-cmd --reload
使用命令 查看开启的端口,出现8080/tcp这开启正确
firewall-cmd --permanent --zone=public --list-ports
别忘了关键一步 再次启动防火墙
systemctl start firewalld.service
再查看端口8080就开放了
最坑爹的是腾讯云的服务器,在这些和安全组都设置好以后。你得等待一会,然后访问Tomcat就成功了。
期间发生的访问错误都与操作无关。延时很严重。
鸡腿都凉了!