用手机移动数据打开自己网站,页面长时间加载转圈,最后提示无法访问。切换WiFi,同一个域名立刻正常打开。遇到这种情况不用急于质疑空间服务商,也不要怀疑代码存在问题,问题大概率出在移动线路和网站空间之间的网络链路。
先做最简单的排查测试:用手机移动网络访问百度、淘宝这类大型站点,确认移动数据本身可以正常联网。如果大站同样打不开,属于手机网络设置问题,和网站空间无关。如果大站访问正常,唯独自己网站无法打开,继续往下排查。
第一个排查方向就是DNS。移动网络自带DNS服务器解析域名时偶尔会出现异常,域名解析指向海外服务器的时候,这类问题更容易出现,尤其是使用海外DNS或者小众DNS服务。关闭手机WiFi,切换移动数据,进入网络设置手动修改DNS,填写114.114.114.114或者223.5.5.5,再次尝试访问网站。修改DNS之后网站能够正常打开,说明问题根源是移动默认DNS解析故障,空间本身没有问题。国内移动网络环境下这类情况比较常见。

第二个需要核查的是空间商是否对移动线路做了访问限制。不少低价虚拟主机或者免费空间,机房只接入电信和联通线路,移动用户访问请求需要远距离绕行,延迟过高直接超时。电脑端执行traceroute命令,Windows系统使用tracert,追踪到空间IP的路由路径,观察数据包转发节点是否存在异常绕行,或是某个节点持续丢包。如果路由追踪看到数据包在移动内网多次转发之后才向外访问,或是中途节点丢包,属于线路互通问题,个人无法调整,只能联系空间商反馈或者更换空间。
第三个常见原因是IP地址被移动运营商屏蔽。如果空间使用共享IP,同一台服务器上其他网站存在违规内容,整个IP段有可能被移动运营商拉黑。典型表现就是电信联通用户访问正常,移动用户无法打开。验证方式很简单,手机移动数据直接访问空间IP地址,如果IP可以访问但域名打不开,属于DNS问题;IP同样无法访问,那么IP大概率被屏蔽。低价共享空间很容易受到同服务器站点牵连,碰到这种情况只能更换IP或者更换主机。
还有一个容易忽略的因素是CDN。网站接入CDN之后,移动网络访问失败有可能是CDN节点故障。部分CDN服务商移动节点覆盖不足,或是移动线路回源超时。临时关闭CDN,域名直接解析到源站IP,再用移动数据测试。关闭CDN后访问恢复正常,说明问题来自CDN配置,可以更换节点或者切换CDN服务商。
域名备案状态也会影响移动网络访问。国内机房空间绑定域名,如果没有完成备案,移动运营商有可能直接拦截访问请求。电信联通的拦截规则相对宽松,移动侧执行标准会更严格。使用国内空间但域名没有备案,需要尽快提交备案,属于硬性要求,没有办法绕过。
上述排查项全部排除之后网站依旧打不开,可以使用第三方全国访问监测工具,比如站长之家超级ping或者boce.com,查看移动线路访问状态。这类工具展示全国各运营商节点访问结果,如果只有移动节点全部访问失败,就可以确定故障在移动线路侧。
能够自行操作解决移动访问问题的手段并不多,修改DNS是最简单有效的方式,更换CDN节点也可以尝试。确认属于空间商线路缺陷,只能提交工单联系服务商处理,或是更换对移动线路友好的空间。选购主机的时候留意机房是否接入移动线路,BGP多线机房三网互通效果更好,单线机房很容易出现某一家运营商无法访问的情况。国内移动用户基数很大,如果网站面向国内访客,移动访问故障值得花时间处理,否则相当于直接流失大量访客。