Loading... 此前,jsdelivr项目的中国域名cdn.jsdelivr.net备案被注销,国内的线路质量非常的不稳定,于是很多采用jsdelivr作为静态文件加速服务的都遭受的了不同程度的影响,现在的加载速度和稳定性很难与之前有备案的情况下相比,当然,此状况出现的原因我个人认为是遭到大幅度滥用导致的,如果你的项目在使用jsdelivr,我们可以通过自建镜像的方式对jsdelivr进行加速,当然为了安全,还是推荐配置防盗链,仅供自己使用。 ## 宝塔配置反向代理 以宝塔为例,创建一个网站  找到反向代理,开启缓存和高级功能,分别配置npm、gh以及wp的镜像,并配置缓存  缓存时间填写43200分钟,当然这个可以按照自己的喜好来配置,时间长的话性能会比较好。 创建三个反向代理,代理目录分别为 ```TXT /npm/ # npm路径 /gh/ # github路径 /wp/ # wordpress路径 ``` 目标url分别为: ```TXT https://cdn.jsdelivr.net/npm/ # npm路径 https://cdn.jsdelivr.net/gh/ # github路径 https://cdn.jsdelivr.net/wp/ # wordpress路径 ``` 发送域名都为cdn.jsdelivr.net 当然也不必每个都配置,假如你只需要使用github的镜像,那么就只配置gh即可。 分开配置代理目录的好处就是域名访问的首页可以自定义,如果直接全站反代的话会直接跳转到jsdelivr官网。 ## Nginx配置文件 ```bash location ^~ /npm/ { proxy_pass https://cdn.jsdelivr.net/npm/; proxy_set_header Host cdn.jsdelivr.net; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; add_header X-Cache $upstream_cache_status; #Set Nginx Cache if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ) { } proxy_ignore_headers Set-Cookie Cache-Control expires; proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 304 301 302 43200m; } location ^~ /gh/ { proxy_pass https://cdn.jsdelivr.net/gh/; proxy_set_header Host cdn.jsdelivr.net; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; add_header X-Cache $upstream_cache_status; #Set Nginx Cache if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ) { } proxy_ignore_headers Set-Cookie Cache-Control expires; proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 304 301 302 43200m; } location ^~ /wp/ { proxy_pass https://cdn.jsdelivr.net/wp/; proxy_set_header Host cdn.jsdelivr.net; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; add_header X-Cache $upstream_cache_status; #Set Nginx Cache if ( $uri ~* "\.(gif|png|jpg|css|js|woff|woff2)$" ) { expires 12h; } proxy_ignore_headers Set-Cookie Cache-Control expires; proxy_cache cache_one; proxy_cache_key $host$uri$is_args$args; proxy_cache_valid 200 304 301 302 43200m; } ``` ## 刷新缓存 在URL中添加`/purge/`即可刷新,例如: - 缓存链接:https://jsdelivr.170601.xyz/gh/kaygb/twentytwenty/vwmwv/2022/202112161541063.png - 执行刷新:https://jsdelivr.170601.xyz/purge/gh/kaygb/twentytwenty/vwmwv/2022/202112161541063.png ## 配置CDN加速 按照正常的CDN加速配置即可,也可配置缓存,建议加上防盗链,以防止滥用,当然公共服务除外。 ## 使用 将项目引用链接中的cdn.jsdelivr.net替换为你绑定的域名即可,这里我绑定的域名是jsdelivr.170601.xyz 效果如下: https://cdn.jsdelivr.net/gh/kaygb/twentytwenty/vwmwv/2022/202112161541063.png https://jsdelivr.170601.xyz/gh/kaygb/twentytwenty/vwmwv/2022/202112161541063.png © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 1 如果觉得我的文章对你有用,请随意赞赏
16 条评论
几百年没有维护博客的我,前几天才发现文章图片都加载不出来了,搞了好几天
哈哈,所以说东西要在自几手上才最好
难蚌, https://jsdelivr.170601.xyz/gh/kaygb/twentytwenty/vwmwv/2022/202112161541063.png 直接 502 了, 还是自建库靠谱 https://cdn.amoe.cc/web-static/private/tomyjan-website/common/img/blog-background_dark.jpg
国内服务器反代的效果还是不行
东西确实在自己的手上最靠谱,最近迁站的时候才发现 jsdelivr 失效了,我的评论整个都打不开了
是的
下载到本地用岂不是更香吗
本地肯定是最香的,这个方案比较适合短时间过过渡
前两天也就CDN是P事头疼死了,好在换了 CDN
最靠谱的还是在自己手里的
我几个月前就自建了jsdelivr反代站,并将整个网站源码中的cdn.jsdelivr.net批量替换成自己的反代站了,现在jsdelivr好像在国内直接无法访问了,没法用国内服务器或CDN反代,要用境外服务器反代,然后套CDN
就在刚刚,我用cloudflare worker反代了jsd,然后又用国内CDN反代woker域名,套娃两层,现在正常了
导航页打开出气的慢是为什么啊
目前cdn.jsdelivr.net服务在国内无法正常访问,部分JS外链建议替换为本地或自行部署代理加速 OωO
之间在又拍云CDN配置一个反代,即开了CDN也反代了jsdelivr
可以的,省了一台服务器 OωO