最近博客图床又被刷 PCDN 的团伙盯上了,几天刷完了我本来能用一年的又拍云联盟代金券,属实恶心至极。

之前尝试开 IP 黑白名单和地区访问限制,也是治标不治本。于是开始研究怎么有效地防盗链。
看到又拍云的控制面板里有 Token 防盗链,通过服务端生成带有时限的 Token 来控制访问,应该能有效阻止恶意刷流量,所以尝试用 Codex 写了一个 Typecho 插件来支持又拍云的 Token。
插件已上传至 GitHub:TypechoUpyunToken,安装到 Typecho 的 usr/plugins 目录下即可。

最后在插件设置页面,配置 CDN 域名白名单,以及和又拍云控制面板一致的 Token 密钥,即可快速启用。
之后博客输出的图片,只要域名匹配,就会自动追加 _upt 参数进行校验,裸链接将被拦截,有效阻止了盗链的情况。
参考
- 又拍云 Token 防盗链文档:https://help.upyun.com/knowledge-base/cdn-token-limite/
- Typecho Hook 文档:https://docs.typecho.org/plugins/hooks
- Typecho 插件结构文档:https://docs.typecho.org/plugins/hello-world