阅读 1087

SEO特别篇:部署后应用可访问排查

背景

作为一名全栈前端,应用部署之后,如何支持正常访问,以及如何排查问题,需要有基本的常识。

应用启动

保证在使用pm2或者类似工具,能够启动并正常查看应用的状态,其在在线状态,也可以通过日志查看输出是否有异常。

正常情况下,netstat -lntp查看本地运行的服务,是否包含所验证的应用。

也可以直接通过 curl adress 查看服务的返回内容

对外暴露的端口和ip地址

首先保证,应用所使用的地址为服务器识别地址,比如localhost 0.0.0.0 127.0.0.1 哪一种是服务器所识别的。

如果使用docker类似的容器,内部的端口和外部端口要做关联指定,同时保证服务器提供上增加相关的端口暴露配置。(注意区分内网地址和外网地址,外网地址才是外界可访问的地址,内网地址需要连接vpn或者在同一内网才可访问)

域名指向

一般我们是通过域名做应用访问的,所以添加域名解析到指定服务器+端口,也是基本的常识,我们可以通过浏览器返回的域名解析结果是不是我们指定的ip来判断这一点。

另外域名指向一定情况下,也存在缓存,具体看服务商的相关说明。

在用户端,域名部分也存在相关的缓存,所以针对此有以下建议:

  1. 尽量减少域名指向服务器的更换
  2. 排查问题时,首先排查用户访问被分配到的具体服务器
  3. 有可用的方案,如何指导用户清除域名缓存

域名的指向服务所使用的技术方案也对结果有着影响,比如使用nginx做二级域名转发,和使用云服务商提供的域名解析,结果就是不一样的,两者原理不同,导致的结果也可能不同。(最近使用nuxt实现服务器部署的案例中,就出现了测试服使用nginx做域名解析可转发后端域名,而生产服使用云服务,域名转发就被禁用了,ip直接访问的可被转发)

域名转发

一般情况下,应用都是所有的数据内部处理,内部请求的,但也有情况是需要转发到其他域名服务的。

比如以下两种情况:

  1. 本应用只是纯应用端,需要接口转发到后端网关
  2. 提供接口服务的为外界环境,通过域名转发

这两种情况下,都要保证

  1. 转发地址正确
  2. ip访问的情况下转发正确
  3. 域名访问的情况下转发正确
文章分类
前端
文章标签