域名切过去之后,旧服务器上好好的网站,到了新服务器却打不开:有人还看到旧页面,有人访问超时,有人遇到 403 或 502,还有人能打开首页,却被 HTTPS 证书报错拦住。
网站迁移至国外云服务器后无法访问,原因通常分好几个层次:DNS 解析、网络连通、端口放行、Web 服务监听、域名虚拟主机、应用依赖和 HTTPS 配置。所以全文的原则只有一条:先确认请求到达了哪里,再定位在哪一层失败。在没有诊断结果之前,别反复改 DNS、关防火墙,或者重装网站。
不同的现象,指向不同的排查方向:
连接超时:可能涉及路由、防火墙、端口或上游网络
连接被拒绝:目标端口没有服务监听,或者存在主动拒绝的规则
403:可能与 Web 服务权限或访问策略有关
404:多半是虚拟主机、站点路径或应用路由配置不正确
502:反向代理无法正常连接后端应用
证书错误:可能与证书域名、证书链、HTTPS 虚拟主机或客户端访问地址有关
状态码只能提供线索,光凭错误页面,确定不了根因。
迁移没有完全验证之前,旧环境先留着,并记录迁移前的 DNS 记录、站点配置、数据库备份和文件版本。新服务器一时恢复不了,要有能执行的回滚策略,能把域名重新指回仍然可用的环境,同时考虑两边的数据是否一致。
不同记录类型指向的目标不同,要核实 A 记录、AAAA 记录与 CNAME 是否符合迁移计划。特别注意:新服务器如果没有正确提供 IPv6 服务,域名上却还留着旧的 AAAA 记录,部分客户端就可能去连接错误的 IPv6 地址。
DNS 变更不会让所有客户端在同一时刻看到相同的结果,旧缓存会在一段时间内继续指向旧地址。迁移前就要规划好 TTL 和切换时间,迁移后用多个网络环境验证解析,别只拿一台电脑的查询结果去判断全网状态。
可以做三个动作:看当前域名的解析结果;测试新服务器 IP 的连通;然后在确认环境安全的前提下,用指定解析地址的方式,验证新服务器上的虚拟主机是否正常:
dig +short example.com A
dig +short example.com AAAA
curl -I --resolve example.com:443:203.0.113.10 https://example.com
示例里的 203.0.113.10 是文档专用地址,要换成新服务器的公网 IP。这样请求会直接发往新服务器,不受 DNS 缓存影响。不要把生产域名的解析临时指向来路不明的地址,也不要公开不必要的管理信息。
系统里放行了 80/443,并不代表云平台的网络规则也允许外部访问。云平台访问控制规则、系统防火墙,以及可能存在的前置网络策略,要分别检查。
看 Web 服务的进程状态、配置测试结果和监听地址。服务如果只绑定了本地回环地址,或者还在用旧配置里的端口,外部请求就访问不到预期的站点。
继续确认服务器的公网地址、路由状态、进程监听、源站访问权限,以及有没有端口被占用。排错时不要长期关闭全部防火墙,应按最小权限原则验证规则,测试完成后恢复必要的安全限制。
核对 Web 服务配置里的文档根目录、文件权限、入口文件和路径大小写。Linux 文件系统通常区分大小写,原环境里不明显的路径问题,迁移后可能让部分页面或图片打不开。
核对数据库地址、账号权限、字符集、数据库名、应用配置文件和环境变量。数据库迁过来了,业务配置却还指向旧 IP,首页也许能加载一部分内容,涉及数据库的页面就会报错。
检查应用缓存、对象缓存、定时任务、会话存储和外部 API 配置,避免迁移后继续连着旧数据库或旧服务地址。
检查证书的域名范围、有效期、证书链和 Nginx 对应的虚拟主机配置。迁移后就算文件路径和 Web 服务看着都对,证书只要还绑着错误的域名,浏览器照样会给出安全警告。
检查 443 端口、证书文件路径、私钥权限、TLS 配置和 HTTPS 虚拟主机。同时核对 Nginx 配置有没有正确加载,改完文件先做配置测试,别直接重启服务。
前面有 CDN 或反向代理的话,要核对代理与源站之间的协议模式,以及应用是否把原始请求正确识别为 HTTPS。这类问题先确认整个请求链的协议状态,再调整跳转规则,不宜盲目叠加多层重定向。
别只测首页,登录、表单提交、文件上传、搜索和核心业务流程都要走一遍。
迁移期间旧站如果还在接受用户提交,要核实新增的数据有没有同步到新站。文件复制成功,不等于迁移完成。
记录新环境的验证结果、当前 DNS 设置和回滚步骤。新站核心功能正常、数据完整、监控也在工作,才适合完成最终切换。
用恒讯科技的国外云服务器作为新环境,迁移前要先核实所选产品的操作系统、公网 IP、目标地区的网络条件和必要的端口访问策略。官网公开的 全球服务器列表 可以作为确认机房与基础资源的入口。
咨询之前,可以先整理一份迁移信息清单:
原服务器系统和新服务器系统
网站程序和数据库类型
域名和证书的现状
需要开放的端口
预计的停机窗口
回滚要求
这样沟通时不用反复补信息,迁移过程中的来回确认也会少很多。
1. 网站迁移到国外云服务器后,DNS 已修改仍然无法访问怎么办?
先用多个网络环境查询解析结果,确认 A、AAAA 记录是否都已更新,再用指定解析地址的方式直接访问新服务器,区分是 DNS 缓存问题还是服务器问题。
2. 迁移后首页正常,但 HTTPS 报错,应该检查哪里?
先看证书是否覆盖当前域名,再看 443 端口、证书路径、私钥权限和 HTTPS 虚拟主机,最后检查 CDN 或反向代理的协议模式。
3. 新服务器 IP 可以 Ping 通,为什么网站仍打不开?
Ping 只能说明基本连通,不代表 80/443 端口放行、Web 服务在监听、虚拟主机配置正确,要逐层检查。
4. 网站迁移时能否先用 IP 测试,不立即切换域名?
可以。用指定解析地址的方式,或者在本机临时修改 hosts 文件,就能在不改动线上 DNS 的情况下验证新服务器。
5. 新服务器故障时,怎样回滚到旧服务器并尽量减少数据差异?
迁移期间保留旧环境并记录切换时间点;回滚前核对新站期间产生的数据,必要时补同步,再把域名指回旧服务器。
排错的顺序可以记成一条线:DNS,网络与端口,Web 服务,应用配置,HTTPS,数据验证。诊断结果要走在修改操作前面,不然越改越乱。
咨询迁移时,可以把上面那份信息清单提供给销售,让对方核实新环境的系统、IP 和端口条件。
Copyright © 2013-2020. All Rights Reserved. 恒讯科技 深圳市恒讯科技有限公司 粤ICP备20052954号 IDC证:B1-20230800.移动站


