去年12月的时候jsDelivr失去了大陆IPC牌照,
截止到昨日,好像彻底被墙了,
网页引用jsdelivr的以及出现大面积打不开的情况,
更换cdn又要更改其js的目录结构,
对我这个不熟悉前端的有一点点不友好,
所以,就想到可以使用cloudflare的workers服务对其进行反向代理,
免费的额度(100,000次每天)足以满足我小范围的使用,
这样只要更改其域名即可,目录结构不动。
下面我们具体说说应该怎么做
第1步
让我们登录cloudflare,选择workers,设置你自己的子域(可以理解即cf的免费二级域名)。
创建服务,并填写你想要的服务名,比如我写的是jscdn
,下面也将以其为例子
第2步
填写服务名字的时候,会提示,您的服务将被部署到:https://jscdn .xxxxx.workers.dev
其中 xxxxx是您填写的子域名字,记住这个域名
启动器任意选择即可
第3步
创建完成后,你会进入这样的一个界面,点击快速编辑
即可
第4步
删除其中全部代码,替换为
addEventListener("fetch", event => {
let url = new URL(event.request.url);
url.hostname = "cdn.jsdelivr.net";
let request = new Request(url, event.request);
event.respondWith(
fetch(request, {
headers: {
'Referer': 'http://isam.top/',
'User-Agent': 'Cloudflare Workers'
}
})
);
});
第4步
点击发送,出现301即可视为成功(因为访问https://cdn.jsdelivr.net就是301跳转到其官网)
第5步
然后,全局搜索你网站目录下的https://cdn.jsdelivr.net
替换为https://jscdn.xxxxx.workers.dev
即可