关于我博客域名被Cloudflare Pages屏蔽那档子事
这档子事多的都给人整无语了
前情提要
由于在不久前我改用 Hexo 做博客,按照传统,我应该整一个 Pages 服务做博客(笑)
由于 GitHub 免费用户的 Private 仓库无法开启 Pages 服务(万恶的资本家)
我选择了 Cloudflare 下的 Pages 服务
具体怎么搭建的就略过了,这类教程 💯°🍺⭐
(百度就行抽象版)
在进行搭建之后,我想要绑定我的博客域名时,出大问题了
问题描述
表现为自定义域名无法激活,始终显示 Inactive (Error)
在许多社区问了以后,大概是得出了两个结论(不一定正确)
1.域名被 Cloudflare 认定为滥用导致无法绑定
2.由于域名之前绑定过百度云加速,可能是由于百度云加速和 Cloudflare 共用一套系统导致的
但无论最终结论是哪个,都导致我无法将我的域名绑定 Cloudflare Pages 了
简言之,我域名被 Cloudflare Pages 屏蔽了(域名本身可以添加到 Cloudflare 面板,但是无法绑定 Cloudflare Pages 服务)
解决思路
通过之前搭建 GitHub 来的灵感,我可以通过反代 Pages 服务曲线救国,实现自定义域名。
大概思路是:通过 Worker 反代 Pages 服务提供的 URL,Worker 绑定自定义的域名,域名在 DNS 提供商那里解析到 Worker 上。
上手解决
首先,先新建一个 Worker 服务,在这个 Worker 服务的管理页面,选择 Quick edit
然后,输入这段 js,自行修改其中一些内容
1 | addEventListener("fetch", (event) => { |
改完之后,Save and Deploy
一下,访问 Workers 分配的域名,验证反代是否正常。
如果成功反代,返回 Worker 服务的管理页面。
在Triggers
下,Add route
。
语法为 .example.com/
例如:blog.ascn.site/*
确认之后再点击一次 Add route
修改/添加 DNS 记录(Cloudflare的)
在 Cloudflare 上添加一个记录,CNAME 类型的,名称正常填,注意值为你的 Workers 分配的域名,建议开启 CDN 加速。
CNAME 方式接入也是一样的操作,只不过 DNS 记录那一步是需要去托管方的控制面板上改。
完结撒花
之后,就可以愉快地享受由 Cloudflare, Inc. 提供的优质网络服务辣