问题
本文重点介绍一个主要在中国观察到的问题,该问题源于中国的防火墙(GFW)执行的阻止措施。 这些措施可能影响到该国某些网页的完整渲染。 当中国用户尝试访问某个网站时,他们可能会遇到两个常见问题之一。 首先,网页可能会无限加载而无法完全显示其内容,使用户无法访问完整的页面。 或者,网页可能完全加载失败,用户无法访问该特定网站的任何内容。
故障排除
虽然本文主要讨论的是ChromeRiver应用,但讨论的见解和策略可以为任何经历类似症状的网站提供相关和有用的帮助。
下面的截图展示了网页显示持续加载症状的问题。
识别问题的步骤:
第一步是使用常用浏览器中的开发工具捕获HAR数据。 有关如何在各种浏览器中捕获HAR数据的详细说明,请参阅如何收集HAR数据。
分析捕获的HAR数据
- 在瀑布部分(最右列)下,我们可以识别出哪个连接加载时间最长。 因为它会有最长的时间条,如下面的截图所示,这很容易识别。
- 点击其中一个连接,您可以查看与之相关的请求网址。 在这种情况下,Chromeriver将主机定向到google-analytics.com,作为跟踪器。 然而,由于中国封锁了Google,该连接一直处于加载状态。
- 另一个连接加载时间较长的实例是app.launchdarkly.com。 通过nslookup进行更仔细的检查显示,该特定主机托管在Fastly上,这是一个内容交付网络,也受到中国防火墙(GFW)的限制。 因此,试图与该主机建立连接时会遇到持续的加载问题。
解决方案
网站通常包含隐藏的跟踪器和广告软件,这些可能建立与防火墙(GFW)阻止的URL的连接。 这可能严重影响网页的正常渲染。 为解决此问题,我们可以在浏览器上使用广告拦截插件或扩展。 以下是建议的步骤:
- 启用您的浏览器上的广告拦截插件或扩展
- 将那些识别的域名添加到阻止列表中。
- 广告拦截器的例子有UBlock Origin,AdBlock Plus,Ghostery等。
关于网页渲染问题的常规故障排除,请参阅如何排查长时间网页加载和渲染问题。
- waterfall.bmp10 MB
0 条评论
请登录写评论。