跳到主要内容
AcoFork Feed

网站分流怎么做?全球秒开!有点坐牢,但是好玩!

网站分流看着很难,实际上一点都不简单,如果你也感兴趣(想坐牢),那就来试试8!

需分流的网站 #

博客本体,主站 https://blog.acofork.com Umami,用于在网站插入一个JS来进行访客统计以及展示访客信息 https://umami.acofork.com/share/CdkXbGgZr6ECKOyK 静态随机图,用于置顶文章Cover和整个网站的背景图 https://pic1.acofork.com


其他: https://acofork.com , https://www.acofork.com 这些都是要 301 重定向到 https://blog.acofork.com 的域名,我们也需要为其配置分流

各CDN SSL申请方案 #

EdgeOne #

由于NS直接在EdgeOne,故直接申请

ESA #

使用DCV委派

Cloudflare #

使用HTTP验证,由于ACME验证节点在国外,所以它只会看到CNAME到Cloudflare的记录,从而签发SSL 针对重定向的域名,由于默认所有请求都会被重定向到新域,ACME自然无法验证,所以我们需要写一条排除规则,让ACME验证路径直接返回200 OK,其余的路径再重定向

源站类型 #

静态型 #

国内使用对应CDN的Page业务,海外使用Cloudflare Worker。至于为什么不将 blog.acofork.com 也放在EdgeOne Page,一是因为EdgeOne CDN和Page的WAF规则是分开的,而Page业务的WAF规则不是很好做海外封锁,二是因为EO在之前被打的时候将这个子域封了。而ESA Page可以很简单做到海外封禁

动态型 #

国内使用IPv6回源(用户 - IPv4 - EO/ESA CDN - IPv6 - 源站)。至于为什么不用ESA,是因为ESA CDN回源非标端口需要像Cloudflare一样写一条回源规则,占用免费规则集5条中的其中之一 海外采用Cloudflare Tunnel(用户 - IPv4 - CF CDN - 内部连接 - 源站)

浏览器客户端实现监看当前访问节点 #

利用浏览器JavaScript发送HEAD请求拿取对端响应头Server字段并回显(若跨域则需要设置 Access-Control-Expose-Headers 响应头,值为 server

注意事项 #

成果展示 #

博客本体 #

Umami #

随机图 #