歡迎訪問我的個人博客皮皮豬:http://www.zhsh666.xyz
前言:CDN的全稱是Content Delivery Network,即內容分發網絡。CDN是構建在網絡之上的內容分發網絡,依靠部署在各地的邊緣服務器,通過中心平台的負載均衡、內容分發、調度等功能模塊,使用戶就近獲取所需內容,降低網絡擁塞,提高用戶訪問響應速度和命中率。CDN的關鍵技術主要有內容存儲和分發技術。
國內加載github的資源比較慢,需要使用CDN加速來優化網站打開速度,於是使用jsDeliver+github搭建免費的CDN,非常適合博客網站使用。
jsDelivr 是一個免費開源的 CDN 解決方案,用於幫助開發者和站長。包含 JavaScript 庫、jQuery 插件、CSS 框架、字體等等 Web 上常用的靜態資源。
下圖我們可以看到他似乎和npm,github,wordpress有某種py關系。點擊訪問jsDelivr主頁
NPM是JavaScript的包管理器,也是世界上最大的軟件注冊中心。發現可重用代碼的包——並以強大的新方式組裝它們。每星期大約有 30 億次的下載量,包含超過 600000 個 包(package) (即,代碼模塊)。來自各大洲的開源軟件開發者使用 npm 互相分享和借鑒。包的結構使您能夠輕松跟蹤依賴項和版本。
所以jsDeliver+npm就是把npm上的包當做cdn的存儲。
使用教程:(jsDeliver不支持加載超過20M的資源,所以一些視頻最好壓縮到20M以下)
// load any project hosted on npm
// 加載以NPM為存儲的任何項目
https://cdn.jsdelivr.net/npm/package@version/file
// load jQuery v3.2.1
// 比如加載Jquery3.2.1
https://cdn.jsdelivr.net/npm/jquery@3.2.1/dist/jquery.min.js
// use a version range instead of a specific version
//使用版本范圍而不是特定版本
https://cdn.jsdelivr.net/npm/jquery@3.2/dist/jquery.min.js
https://cdn.jsdelivr.net/npm/jquery@3/dist/jquery.min.js
// omit the version completely to get the latest one
//完全忽略版本以獲取最新版本,不建議使用
https://cdn.jsdelivr.net/npm/jquery/dist/jquery.min.js
略......
Github
gitHub是一個面向開源及私有軟件項目的托管平台,因為只支持git 作為唯一的版本庫格式進行托管,故名gitHub。
jsDeliver+Github使用教程:
// load any GitHub release, commit, or branch
// 加載任何Github發布、提交或分支
https://cdn.jsdelivr.net/gh/user/repo@version/file
略......
WordPress
WordPress是一款個人博客系統,並逐步演化成一款內容管理系統軟件,它是使用PHP語言和MySQL數據庫開發的。用戶可以在支持 PHP 和 MySQL數據庫的服務器上使用自己的博客。
jsDeliver+WordPress使用教程:
// load any plugin from the WordPress.org plugins SVN repo
// 從WordPress.org等SVN倉庫加載任何插件
https://cdn.jsdelivr.net/wp/plugins/project/tags/version/file
略......
這里我們介紹使用的是jsDeliver+github,所以接下來只介紹這部分使用。
第一步:新建github倉庫
第二步:克隆Github倉庫到本地
$ git clone 你的倉庫鏈接 # 本地克隆github倉庫
第三步:上傳需要的資源
在本地目錄右鍵 Git Bash Here
復制需要的靜態資源到本地git倉庫中,提交到github倉庫上。
命令如下:
// 查看狀態
git status
// 添加到庫中
git add .
// 提交更新(引號內 為自定義信息說明)
git commit -m '第一次提交'
// 推送至遠程倉庫
git push
第四步:發布倉庫
點擊release發布
發布版本號為1.0(自定義)
第五步:通過jsDeliver引用資源
使用方法:
https://cdn.jsdelivr.net/gh/你的用戶名/你的倉庫名@發布的版本號/文件路徑
比如:
//加載圖片
https://cdn.jsdelivr.net/gh/Zevs6/CDN/img/avatar.jpg
注意:版本號不是必需的,是為了區分新舊資源,如果不使用版本號,將會直接引用最新資源,除此之外還可以使用某個范圍內的版本,查看所有資源等,具體使用方法如下:
- // 加載任何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/