背景

今天新增加了一台新服务器,暂时nginx啥的都未启用,所以就准备先把项目跑上去,通过ip+端口进行访问,能用即可,但部署成功之后,却一直访问不了,在浏览器访问之后,一直在转圈就是不显示,这里有个特点:首先不是一访问就出现找不到页面,其次是,感觉访问得到,但一直在解析,就是不显示页面;

 

一般出现以上情况,我们可以通过多种方式进行一一排除,排查出原因:

 

第一种:通过浏览器访问,但不显示,这是最直观的验证项目是否已经运行的方式,本质上其实就是外网的访问;

 

 

第二种:在linux服务器上,通过命令进行验证,如果无法访问,则不显示任何东西;

如果访问正常,会显示出项目首页的前端代码

 

 

第三种:通过命令看防火墙是否开启,有打印出内容说明有开启

 

 

第四种:验证外网端口是否开启

PS:需要注意的是,第四种情况,是针对云服务器而言的,一般的云服务器,都会另外针对服务器,加多了一层防火墙。所以如果没有进行开启,同样也是会导致无法连接;

 

此处我用8007(开启)和8008(关闭)进行举例

如果没开启端口,使用tcping ip+端口,会返回 no response ,如果有开启,则会返回Port is open (这里说到tcping,关于这个东西,后面我会解释一下)

 

至此,我总结一下,如果项目部署到服务器,且通过查看tomcat 启动项目的日志,显示运行启动正常,没有报错,但是却访问不了,那可以通过以上几种方式进行排查问题。一般第四种情况导致的无法访问项目,机率比较高;

 

如果是第四种情况导致的问题,那么需要去云服务器(一般有管理页面可以直接看到)进行开启端口;

 

 

关于tcping,这里先说一下ping

 

ping很多人都知道,是window自带的可以用于验证服务器是否有返回的常见工具 ,比如ping www.baidu.com

 

但如果要验证端口是否有开启,ping 是不支持的,所以推荐tcping 这个小工具 ,可度娘一下下载,然后放到以下地址,就可以直接在cmd使用了:

C:\Windows\System32

 

 

 

 

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐