前言

jsDelivr 是国外的一家优秀的公共 CDN 服务提供商,也是首个打通中国大陆(网宿公司运营)与海外的免费 CDN 服务。jsDelivr 有一个十分好用的功能——它可以加速 Github 仓库的文件。

众所周知,我们可以使用Git仓库来存储各种文件,也可以用来存储图片当图床,但是,在国内的速度堪忧,但是借助jsDeliver,我们可以利用Github+jsDeliver来当一个免费的图床。当然由于jsDeliver可以加速Github仓库中的文件,所以我们也可以将网站的静态资源上传到Github,然后利用jsDeliver进行加速。

使用

仅介绍如何加速github文件,其他同理
// 加载任何Github发布、提交或分支
https://cdn.jsdelivr.net/gh/user/repo@version/file

// 加载 jQuery v3.2.1
https://cdn.jsdelivr.net/gh/jquery/jquery@3.2.1/dist/jquery.min.js

// 使用版本范围而不是特定版本
https://cdn.jsdelivr.net/gh/jquery/jquery@3.2/dist/jquery.min.js   https://cdn.jsdelivr.net/gh/jquery/jquery@3/dist/jquery.min.js
 
// 完全省略该版本以获取最新版本
https://cdn.jsdelivr.net/gh/jquery/jquery/dist/jquery.min.js
 
// 将“.min”添加到任何JS/CSS文件中以获取缩小版本,如果不存在,将为会自动生成
https://cdn.jsdelivr.net/gh/jquery/jquery@3.2.1/src/core.min.js
 
// 在末尾添加 / 以获取资源目录列表
https://cdn.jsdelivr.net/gh/jquery/jquery/

此外

针对Github+jsDeliver搭建图床来说,可以使用PicGo进行更加简单高效的操作,当然,网上已经有很多详细的教程了,我就不做过多介绍了

不过我用脚本感觉挺好

#!/bin/sh
#cdn address
str="https://cdn.jsdelivr.net/gh/ZGGSONG/cdn/"
hexo="hexo"
blog="blog"
time=$(date "+%Y/%m/%d_%X")
i=1
while [ $i -eq 1 ]
do
    echo -e "\033[41;37m-------------\033[0m"
    echo -e "\033[41;37m添加文件(y/n)\033[0m"
    echo -e "\033[41;37m-------------\033[0m"
    read ans
    if [ $ans == y ]
    then
        echo "请输入文件名:"
        read filename
        echo "存放至哪个目录下(h/b)"
        read choice
        case "$choice" in
            'h'|'H'|'hexo'|'HEXO')
                echo - $filename: $str$hexo'/'$filename >> ~/gitR/cdn/hexo/README.md
                echo  >> ~/gitR/cdn/hexo/README.md
                cp ./$filename ~/gitR/cdn/hexo/
                ;;
            'b'|'B'|'blog'|'BLOG')
                echo - $filename: $str$blog'/'$filename >> ~/gitR/cdn/blog/README.md
                echo  >> ~/gitR/cdn/blog/README.md
                cp ./$filename ~/gitR/cdn/blog/
                ;;
            *)
                echo -e "\033[41;36m输入有误 \033[0m" 
                ;;
        esac
    else
        break
    fi
done

#推送仓库
echo -e "\033[42;37m---------------\033[0m" 
echo -e "\033[42;37m推送到仓库(y/n)\033[0m" 
echo -e "\033[42;37m---------------\033[0m" 
read git
if [ $git == y ]
then
    cd ~/gitR/cdn
    git add .
    git status
    git commit -m "update $time"
    git push
    echo -e "\033[42;37m推送成功 \033[0m" 
else
    echo -e "\033[41;36m取消推送 \033[0m" 
fi
exit 0

最后修改:2020 年 03 月 27 日 10 : 42 PM
如果觉得我的文章对你有用,请随意赞赏~