抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

有小伙伴希望杜老师出一篇自建 CDN 的教程,其实网上有那种集成的系统,如 wdCDN。不过这类系统几乎都有节点限制,如果想搭建更多的节点,则需支付相应费用。对此杜老师有一套自用的 CDN 搭建思路,今天同需要的小伙伴分享下!

搭建思路

如图。当用户访问去不图床时,首先通过网络解析域名。杜老师购买了专业版 DNSPod,可以通过地域判断实现智能解析,将请求交给最近一台服务器处理。服务器前置了雷池 Web 应用防火墙,拦截一波攻击流量,正常流量留置反代服务器上。反代节点连接到内穿服务器,从中获得网站数据。而去不图床通过企业路由器内置模块架设内网穿透,以保障连接稳定及高效。因为绘制空间有限,在这里文字说明下,去不图床有 7 个反代服务器,相当于同数量的 CDN 节点。相比常规 CDN 内置 DNS 智能解析,杜老师则借助了 DNSPod「DNSPod 免费版也可实现智能解析,只是地域判断不够精细」

宝塔面板

如您使用宝塔面板,在搭建反代节点时,可先点击网站——添加站点,输入域名后点提交。进入站点设置——反向代理,如下图填写相关的信息即可。这里需要注意的是,为了实现类似 CDN 的加速功能,记得开启缓存,时间根据实际情况填写即可:

1Panel 服务器面板

如您使用 1Panel 服务器面板,在搭建反代节点时,可先点击网站——创建站点——反向代理,输入域名后点提交。进入站点配置页面——反向代理——编辑,如下图填写相关的信息即可。这里需要注意的是,1Panel 服务器面板默认支持 gif|png|jpg|css|js|woff|woff2 格式的缓存,如需缓存其它文件,还需自行修改配置文件:

雷池 Web 应用防火墙

雷池 Web 应用防火墙除可以反代外,还能防御攻击。但本身的特性使得无法缓存数据,即每次访问时都需回源请求数据,故无法实现类似于 CDN 的缓存加速功能。杜老师用其做前置,主要过滤攻击数据,防止无效流量消耗,变相提升了带宽使用率。其防御效果很不错,建议配合其它服务「带有缓存功能」一并使用,如 Nginx Proxy Manager:

南墙 Web 应用防火墙

也是机缘巧合接触到了南墙 Web 应用防火墙,精力有限还未与雷池 Web 应用防火墙做对比,但其内置 CDN 缓存功能很好用,并支持多节点回源、定义回源策略等等。需要注意的是,在添加站点时开启 CDN 后,还需进入 CDN 加速页面中,添加缓存规则,默认支持 jpg|png|bmp|gif|ico|css|js 格式的缓存:

DNSPod 免费智能 DNS 解析

DNSPod 专业版支持 10 个负载均衡节点「免费版仅 2 个」TTL 最小值 60 秒,可在单点故障时迅速切换至其它可用节点。并且可以使用更加精细的地域性智能解析:

评论