博客流量劫持

之前博客放在 Github pages 上,一直都没什么问题。因为是静态,某些人没办法攻击了。
今天朋友发来消息,告知博客被劫持了。看了看,发现是被 TCP 注入了,多了 30 个 .js ,Baidu、 Taobao 还有什么微商的广告。
其实一直都在等 Github pages 更新自定义域名的 HTTPS 支持,可惜等不到了,必须得上 HTTPS 了。
于是就直接更换为静态网站托管服务 Netlify 上了。

Netlify 是一家提供静态网络托管服务的初创公司,旨在提升网页加载速度,提升用户网页访问体验。
支持自定义域名,支持 HTTPS,其免费计划中的节点也有许多,主要使用的是 Amazon 和 Google 家的服务器,在中国大陆访问较为良好的是 Amazon 家的日本和新加坡的节点。

查阅 Netlify 文档的时候,发现可以自定义 SSL 证书。不过询问了一下,发现是我想多了。
他们的文档写的不是很详细,所以并没有指出免费计划不支持自定义 SSL 证书。
因为不想用 www 域,想直接使用裸域,所以问题就来了,使用裸域就意味着无法连接到距离更近的 CDN 节点。
无奈只能把 NS 换回 CloudXNS,想试试用不同的线路对裸域进行 CNAME 和 MX 解析。
不过可能是因为我在同步进行其它操作的原因,Netlify 上 Let’s Encrypt 验证失败。
因为懒,就直接放弃这种方法了。

CloudXNS 有一个独有的私有类型 AX,可以填写优先级(即承担访问的百分比),单条 AX 记录与 A 记录效果一样。

类型 线路 记录值
A 全网 1.2.3.4
AX 电信 5.6.7.8
AX 电信 9.10.11.12

如这个表中所示,第一条记录解析到 Netlify 的负载均衡上,因为不解析到这个节点上,无法完成 Let’s Encrypt 的验证。
第二条和第三条则是 CDN 节点的 IP,AX 得填写优先级,即承担访问的百分比,随便设置即可。
当然你不设置 AX 直接设置 A 记录也是一样的。不过,为了避免某个节点出问题了,你网站的访客直接无法访问了,所以推荐使用 AX 记录。

Netlify 似乎支持自动构建,不过因为需要本地调试,所以并没有使用这个功能,不过大家可以去试试。