WP 禁止 Google 和 GitHub 连接

GithubTutorial_part2

今年五月底以来,对 Google 服务的彻底封杀,
不但让骆驼的日常生活受到严重困扰,同时也影响到了工作层面。
大量的资料查询需要翻墙,同时各种服务也无法正常使用。
就连 也受到牵连,因为在最近版本中,
开始默认使用托管于 Google Fonts 上的 Open Sans 字体。
前后台都会因此变得缓慢,相关的博文很多,也就不再赘述。
最简单的解决方法就是安装并启用,
由 Suifengtec 开发的 Remove Open Sans font Link from WP core 。

但这仅能对 后台起效,针对不同的主题和插件,
还需要在源代码中搜索“fonts.googleapis.com”。
它们多半在 CSS 等样式文件中出现,直接删除并不会影响到使用,
本来而言 Google Fonts 目前对于中文网页而言意义微乎其微。
除去 Google Fonts,其它 Google 托管的文件也应转为本地或者国内 CDN 地址。
扩大搜索范围到“googleapis.com”可能会找到类似以下的地址:

<script src=http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

不考虑版本差异的话,可以考虑改用百度开放云提供的 CDN 公共库:

<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

另外,查询“cdn”或者常见库名(如“jquery”)有时也能找到挂在国外 CDN 的文件链接,
这就需要自己翻墙下载回来扔上服务器再改链接。比如下面这条:

<script src="'+_dlp+'//cdnjs.cloudflare.com/ajax/libs/jquery-mousewheel/3.0.6/jquery.mousewheel.min.js"></script>

除了 Google 这个冤大头,GitHub 也是 插件外链的重灾区。
在最近接触的一个 WordPress 案例中,启用某主题并进行了基础优化(去 Google)流程后,
前台访问速度正常,而管理后台依然非常缓慢。
症状为点击链接后,数秒服务器才有反应,之后加载速度并不缓慢。
推测服务器后台在加载页面之前,还对外网进行了访问,
而该网址难以到达(被墙),因此需要数秒判断。

尝试中断互联网,仅保留局域网。再次访问后台,
所有页面打开都在一秒左右,非常流畅,证明此前的推测是正确的。
恢复互联网连接,打开服务器上的实时连接监控(360流量防火墙),
点击后台页面,同时观察 httpd.exe 的连接情况。
发现会用 443 端口去连接 103.245.222.133,数秒后该连接中断。

forbid-github-httpd

反查该IP位于美国西海岸,直接打开则显示为 相关页面。
结合近年 反复被墙的消息,基本锁定了目标。
在主题源文件中查找“.com”发现数个相关内容,
并且也是通过 https 访问,符合此前观察的 443 端口连接的情况。
将结果加入服务器的 hosts(c:\windows\system32\drivers\etc)

127.0.0.1		github.com
127.0.0.1		api.github.com
127.0.0.1		modernizr.github.com
127.0.0.1		raw.github.com
127.0.0.1		ivaynberg.github.com
127.0.0.1		github.map.fastly.net

其中 modernizr.github.com 和 ivaynberg.github.com,
域名看上去应该是开发者的主页(GitHub Pages),而非 GitHub 自身的子域名,
同时 ping 值返回都是 103.245.222.133,也可以看到其真实域名应该是
github.map.fastly.net(Fastly为GitHub提供CDN服务),一并加入屏蔽列表。

forbid-github-ping

【相关资料】
1、kioko – Create A Repository◃tk
2、suifengtec – a WordPress plugin:Remove Open Sans font Link from WP core◃suoling.net
3、孟胜彬 – 为GitHub Pages自定义域名◃shengbin.me

发表评论

邮箱地址不会被公开。 必填项已用*标注