警告由于被DDOS,已经不再做分流监控,故本文诸多链接失效
正式开始
比如说我的博客
它在国外的节点是 Cloudflare Page ,而在国内的节点是 阿里云 ESA Pages/EdgeOne Pages
我使用的方案是在国内自托管一个 Uptime Kuma 服务,而在海外使用一些大厂的云监控,如 BetterStack UptimeRobot 等等,并且让他们互相监控
对于大厂的监控,我们不必做防护,但对于你自托管的监控,推荐套 Cloudflare Tunnel ,防止被DDoS
国内监控:
海外监控:
进阶:利用自定义HTTP请求头Host字段实现单节点分流域名的监控
如果你有个分流域名,正常来说我们需要两个监测源模拟国内和海外用户访问,但真的需要这么麻烦吗…
原理
CDN上托管了那么多的网站,那它是如何识别每个用户需要访问哪个网站的呢?
针对 HTTPS ,CDN 会检查SSL握手报文中的 Server_Name 字段。而针对 HTTP ,CDN 会检查请求头中的 Host 字段
也就是说,对于海外CDN是否存活,我们可以通过直接访问CDN节点,如: http://blog.acofork.com.a1.initww.com 并携带上 Host 头指定为 blog.acofork.com ,从而强制指定节点访问业务网站,不走分流
那么如果CDN开启了强制HTTPS呢?那就关掉

常用CDN节点
- Cloudflare:你自己的优选域名,如 http://cdn.2x.nz
- Github: http://pages.github.com
配置方法
部署一个Uptime Kuma(或者其他服务,监测源必须在国内。因为EO,ESA我们要做拦截海外策略)
如图写监测项目,直接使用HTTP协议监测CDN节点,并且携带Host头,将重定向设为0,只要返回 200 就算存活(为了减轻站点压力,建议使用HEAD请求)


Demo
发现错误或想要改进这篇文章?
在 GitHub 上编辑此页文章修订历史 (7 次)
查看变更记录
feat: 将所有存量文章时间统一减去8小时,修正时区偏移
chore: remove AI summaries from posts
docs: 统一博客文章AI摘要模型为gemini-3-flash-preview并优化内容
feat(posts): 为所有文章添加AI摘要并支持AI类型提示块
docs: 合并分流监控文章并更新失效链接
压缩图片
posts: 添加关于全球网站监控方案的文章和配套图片资源,介绍国内自托管Uptime Kuma和海外云监控的实施方案