无法通过公网访问阿里云服务器Tomcat下部署的项目

近日在上线一个项目时出现了一个问题:在ESC实例上搭建好一切环境后(JDKMySQLTomcat),一切测试均无问题,项目部署到Tomcat并启动后,通过内网(127.0.0.1localhost)可以访问8080端口,但公网IP(阿里云服务器IP地址)无法访问8080

无法通过公网访问阿里云服务器Tomcat下部署的项目_第1张图片

阿里云服务器系统环境是winsdowserver 2012 R2

在网上各种查资料也没能解决,最后发现是阿里云服务器安全组策略中端口没有开放,不曾料想在阿里云网站上部署项目问题居然出在云服务器上,全是坑啊。看下边的操作步骤吧:

1.首先登陆阿里云官网

无法通过公网访问阿里云服务器Tomcat下部署的项目_第2张图片

2.进入安全组设置

点右上角控制台 --> 左边导航栏点云服务器ECS --> 安全组,找到自己的实例

无法通过公网访问阿里云服务器Tomcat下部署的项目_第3张图片

3.规则配置

无法通过公网访问阿里云服务器Tomcat下部署的项目_第4张图片

4.8080端口配置

无法通过公网访问阿里云服务器Tomcat下部署的项目_第5张图片

点上图的添加安全组规则

无法通过公网访问阿里云服务器Tomcat下部署的项目_第6张图片

以上只是对8080端口进行配置,也可以采用如下方式允许所有端口开放:

配置一个新的安全组,对端口不做限制。


注意:协议类型选择全部,端口类型-1/-1表示不限制端口

配置完成就可以通过公网IP访问项目啦!

修改安全组规则后,导致远程桌面无法连接(方法:win+R --> mstsc --> 远程主机IP),顺便整理了远程桌面无法连接的原因(Linux系统和Windows系统):

1.首先确保服务器端开启远程桌面功能,或者是某些优化软件将远程桌面禁用了,开启即可。

开启方法:打开控制面板 —>系统和安全 —> 允许远程访问 —> 勾选允许连接到此计算机

2.如果还不行,建议后台开放xm console命令的接入接口( 有了这个, vps内部原因导致网络挂掉仍然可以登陆进shell,启动异常时也可以看到启动过程

从实际经验来看,这东西常见的情况如下: 
1. 由于selinux导致无法启动,需要在启动过程中编辑grub。 
2. 错误修改sshd配置文件,导致root或者全部用户无法登录。 
3. LINUX默认180天没有fsck的话,在重启或者关机后启动就自动fsck,数据量大的话可能需要几十分钟甚至几小时,如果无法查看启动过程的话,就不知道发生了什么,不知所措。 
4. 错误操作iptables导致无法登录SSH。 
5. 内存用光后,LINUX 内核会自动kill process,有的在kill后会恢复到正常状态,有的不会。则kill process的过程一般不是kill一两个就可以的,而是要持续很长一段时间,在xm console可以看到相关的信息。这种情况大多都是访问量异常引起,比如蜘蛛抓取频繁,访问量突发,CC攻击等等。 
 
在Windows下同等的东西是VNC,常见的情况如下:
1.错误修改3389端口,导致无法登录。 
2.错误配置防火墙策略,无法登录。 
3. 安装乱七八糟的安全软件导致无法启动或无网络连接。 
4. 错误禁用网卡 

我的原因是将3389端口不小心禁用掉了,导致无法登录。
 
不管是xm console还是VNC,作用都是一样的,连接这两个东西不需要通过VPS的网络,而是用的宿主主机的网络。只要虚拟机是运行中的,不管虚拟机有没有网络,有没有启动完成,都是可登录进去查看到情况或者进行操作。

你可能感兴趣的:(项目上线问题整理)