慕由
本帖最后由 慕由 于 2022-5-31 14:37 编辑
前言
近期,各服主的皮肤站都可能遇到了以下这种情况

(包括本人)
一开始咨询了一些朋友,从调试模式中看到是cdn静态资源加载失效
然后从各个方面都尝试过还是无法解决
直到看到了GitHub上的一则
issues
才知道国内的jsDelivr已经受到污染
(翻了下百度这似乎是曾经已经出现过很多次的问题)
解决方法
这里写出两种方法
一种是简易版只适配nginx(本人所使用的)
另一种是nginx/apache都通用的
当时为了方便我所使用的是宝塔面板
此帖在宝塔内打开的配置文件非宝塔用户可自行打开
另:两种方法都是转自GitHub的
issues
(nginx/apache指web服务器类型)
一.nginx配置文件设置
首先打开网站的设置
非宝塔用户我记得是在nginx的设置里


选择配置文件

在下方增加这三行配置即可
  1.   sub_filter 'cdn.jsdelivr.net' 'fastly.jsdelivr.net';
  2.   sub_filter_once off;
  3.   sub_filter_types *;
复制代码
然后访问皮肤站
会惊喜得发现已经变得正常了
二.简单粗暴修改jsdelivr链接
在皮肤站目录下寻找有关jsdelivr的链接

非宝塔用户可能有点麻烦
都在皮肤站的目录内,可耐心寻找
然后将所有cdn.jsdelivr前面的cdn替换成fastly
替换后为fastly.jsdelivr


其实道理和上一个方法差不多,只是上一个方法简化了许多
然后访问皮肤站就可以恢复正常了
后记
昨天看了眼问答版发现有人在问所以今天才写的这篇帖子
方法都源自BlessingSkin的GitHub issues
最后
内容,配置有错的话希望各位指正
排版不好见谅

DreamVoid
因为这个我连游戏都玩不了,害人不浅
我还算有一点点技术力,要是不懂这些的肯定很慌

慕由
DreamVoid 发表于 2022-5-30 16:22
因为这个我连游戏都玩不了,害人不浅
我还算有一点点技术力,要是不懂这些的肯定很慌 ...

乐,我就是看到站内没有这种教程帖才写出来的
(jsdelivr已经tm的污染修复三次了)

嘉晚饭,赢
非宝塔用户可能有点麻烦
  1. find . -type f -exec sed -i 's/cdn.jsdelivr/fastly.jsdelivr/g' {} \;
复制代码

慕由
fastly.jsdelivr.net也开始奇奇怪怪得出问题了
cdn.jsdelivr.net最近也变得正常了
可以直接改回去
如果想以后一劳永逸代码可以改为
sub_filter 'https://cdn.jsdelivr.net/npm/' 'https://unpkg.com/';
sub_filter_once off;
sub_filter_types *;

Lidocaine
可以开F12看看需要的哪些资源连接超时,尝试下载到本地然后替换为 localhost
(ε=ε=ε=┏(゜ロ゜;)┛