如何使用jsDelivr+Github 实现免费CDN加速?

这篇具有很好参考价值的文章主要介绍了如何使用jsDelivr+Github 实现免费CDN加速?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录
  • 序言
  • 1 cdn简介
  • 2 cdn请求分发原理
  • 3 jsDelivr简介
  • 4.jsDelivr 的简单使用
  • 5 jsDelivr + Github 的具体实现
    • 5.1 新建Github仓库
    • 5.2 使用git clone 命令将仓库克隆到本地
    • 5.3 将需要cdn加速的资源上传到github仓库
    • 5.4 点击release 发布版本
    • 5.5 通过jsDelivr引用资源
  • 6 将hexo中用到静态资源的地方换成cdn加速

序言

个人采用hexo搭建了博客,博客也刚上线不久,博客地址:https://www.xiezhrspace.cn 。 欢迎小伙伴访问,疯狂暗示来关注来访问(‐^▽^‐)。

虽然放到了云服务器上,但是由于博客上传的图片等资源越来越多,请求的资源也越来越多,博客访问速度越来越慢,简直不忍直视。

愁了好久,一直在想办法优化,自己在网上也找资料,在和博客交流群的小伙伴交流后便有了解决方案,【使用cdn加速】。

但是呢问题又来了,很多云服务提供商的cdn加速都是要根据流量花钱的。虽然网站访问量不多,但是呢能白嫖当然是最好的了。

在小伙伴推荐后有了两种白嫖方案 1、jsDelivr+Github 2、又拍云(需要申请账号加入又拍云联盟,个人的申请还未下来)。都说又拍云加速会更好一些,但是自己的申请还没办好,而博客访问优化又迫在眉睫,固先采用了第一个方案:jsDelivr+Github 的方案。

下面就以jsDelivr+Github 实现免费cdn加速为例,记录自己优化过程。

1 cdn简介

cdn 全称Content Delivery Network即内容分发网络。

CDN是一组分布在多个不同地方的WEB服务器,可以更加有效的向用户提供资源,会根据距离的远近来选择 。使用户能就近的获取请求数据,解决网络拥堵,提高访问速度,解决由于网络带宽小,用户访问量大,网点分布不均等原因导致的访问速度慢的问题。

2 cdn请求分发原理

如何使用jsDelivr+Github 实现免费CDN加速?

(1)用户向浏览器提供需要访问的域名;

(2)浏览器调用域名解析库对域名进行解析,由于CDN对域名解析过程进行了调整,所以解析函数库一般得到的是该域名对应的CNAME记录,为了得到实际的IP地址,浏览器需要再次对获得的CNAME域名进行解析以得到实际的IP地址;在此过程中,使用的全局负载均衡DNS解析。如根据地理位置信息解析对应的IP地址,使得用户能就近访问;

(3)此次解析得到CDN缓存服务器的IP地址,浏览器在得到实际的ip地址之后,向缓存服务器发出访问请求;

(4)缓存服务器根据浏览器提供的要访问的域名,通过Cache内部专用DNS解析得到此域名的实际IP地址,再由缓存服务器向此实际IP地址提交访问请求;

(5)缓存服务器从实际IP地址得到内容以后,一方面在本地进行保存,以备以后使用,二方面把获取的数据放回给客户端,完成数据服务过程;

(6)客户端得到由缓存服务器返回的数据以后显示出来并完成整个浏览的数据请求过程。

3 jsDelivr简介

是一个免费、快速和可信赖的CDN加速服务,声称它每个月可以支撑680亿次的请求。服务在Github上是开源的,jsDelivr地址 。目前,它提供了针对npm、Github和WordPress的加速服务,只需要一行代码就可以获得加速效果。只要我们的项目中用到了第三方的静态资源,譬如JavaScript脚本,css样式表,图片,图标,Flash等静态资源文件都应该考虑接入到CDN中

4.jsDelivr 的简单使用

我们以加载jQuery和Bootstrap 为例

// load jQuery v3.2.1
https://cdn.jsdelivr.net/npm/jquery@3.2.1/dist/jquery.min.js
// load bootstrap v4.4.1
https://cdn.jsdelivr.net/npm/bootstrap@4.4.1/dist/js/bootstrap.js

jsDelivr + Github便是免费且好用的CDN,非常适合博客网站使用

5 jsDelivr + Github 的具体实现

5.1 新建Github仓库

如何使用jsDelivr+Github 实现免费CDN加速?

5.2 使用git clone 命令将仓库克隆到本地

如何使用jsDelivr+Github 实现免费CDN加速?

在要放仓库的本地目录右键 Git Bash Here(如果没有安装git的需要提前安装下,都是默认安装即可),并输入以下命令

git clone https://github.com/xiezhr/mycdn.git
$ git clone https://github.com/xiezhr/mycdn.git
Cloning into 'mycdn'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.

5.3 将需要cdn加速的资源上传到github仓库

需要用到的命令如下

git add .                     //添加所有文件到暂存区
git status                    //查看状态
git commit -m '第一次提交'      //把文件提交到仓库 -m 后面的是备注信息
git push                      //推送至远程仓库

个人采用的是hexo博客框架,该框架的静态资源(css、js、图片等)都是放在source目录下面,所以呢我是将source目录真个上传上去,这样的好处是路径跟原来的保持一致,后面在调用的时候比较方便。
如何使用jsDelivr+Github 实现免费CDN加速?

git 窗口输入如上命令之后,文件都上传到了github仓库
如何使用jsDelivr+Github 实现免费CDN加速?

5.4 点击release 发布版本

如何使用jsDelivr+Github 实现免费CDN加速?
自定义发布版
如何使用jsDelivr+Github 实现免费CDN加速?

5.5 通过jsDelivr引用资源

通过如下地址应用资源

https://cdn.jsdelivr.net/gh/你的用户名/你的仓库名@发布的版本号/文件路径

举个栗子,获取source/bgimg路径下的back-rain.png

https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/bgimg/back-rain.png       ## 获取最新资源
https://cdn.jsdelivr.net/gh/xiezhr/mycdn@1.0/source/bgimg/back-rain.png   ## 获取1.0版本的资源

注意: 版本号不是必需的,是为了区分新旧资源,如果不使用版本号,将会直接引用最新资源,除此之外还可以使用某个范围内的版本,查看所有资源等,具体使用方法如下:

// 加载任何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/

6 将hexo中用到静态资源的地方换成cdn加速

# 使用到的前端库,可按需替换成对应的CDN地址,如果下面未指定具体的版本号,使用最新的版本即可.
# 注:jsdelivr可以自动帮你生成.min版的js和css,所以你在设置js及css路径中可以直接写.min.xxx
libs:
  css:
    matery: https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/css/matery.css
    mycss: https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/css/my.css
    fontAwesome: https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/libs/awesome/css/all.css # V5.11.1
    materialize: https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/libs/materialize/materialize.min.css # 1.0.0
    aos: https://cdn.jsdelivr.net/gh/xiezhr/mycdn/source/libs/aos/aos.css

都换好之后,执行如下命令

hexo cl & hexo g & hexo s

浏览器地址栏输入 http://localhost:4000 访问博客,你会发下博客访问速度快了很多。到此大功告成!!!文章来源地址https://www.toymoban.com/news/detail-437425.html

到了这里,关于如何使用jsDelivr+Github 实现免费CDN加速?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【手把手教学】利用七牛云免费CDN服务为自己网站启用图片CDN加速 - 免费版10G/月

    A) 我的网站原图:       http://assets.xxx.com/ assets/img/banner.jpg B) 七牛CDN图片外链:http://cdn.xxx.com/ assets/img/banner.jpg ( 其中B指向七牛的个人存储空间的同路径文件C,如果C不存在或过期,七牛就会自动向A取图 ) 七牛的CDN与传统的CDN思路一样,例如免费的cloudflare、收费的Amazo

    2024年02月02日
    浏览(136)
  • 免费图床(github+picgo+cdn)

    本文章将教学如何免费搭建自己的图床(使用github和PicGo) 当我们写笔记或者文档的时候,会用到一些图片,这些图片往往都是保存在本地文件夹下,很不方便 将图片以URL链接的形式进行展示,从任何地方都能够进行访问,写笔记也会变得很方便。 首先在github上新建一个仓

    2024年04月17日
    浏览(37)
  • Github 打不开官网不能使用命令,现在一款简单又实用的免费 GitHub 加速神器介绍给你!

    今天给继续大家推荐一个堪称 GitHub 加速神器的开源项目。 这个开源项目就是: FastGitHub ,它主要解决 GitHub 打不开、用户头像无法加载、releases 无法上传下载、git-clone、git-pull、git-push 失败等问题。 该项目的好处就是专门针对 GitHub 访问速度慢的问题,具有合法性,可靠性,

    2024年02月03日
    浏览(60)
  • 盘点国内前端npm CDN替代方案,基本上可以替代unpkg、jsdelivr

    收集一波常见的加速NPM包的CDN,发现有些还是挺好用的,基本上可以替代unpkg、jsdelivr,用来做博客或者网站加载NPM使用还是可以的。 unpkg.com cdn.jsdelivr.net fastly.jsdelivr.net 使用方法 :直接进官网,搜NPM包名使用。 缺点 :有时候不是很稳定,而且国内有些地方没法访问,jsdel

    2023年04月17日
    浏览(67)
  • 如何选择CDN加速平台?

    现如今全球CDN市场规模逐年攀升,在2017年全球CDN市场规模约为75亿美元,到2021年增长到200亿美元左右。我国CDN行业同样保持高速发展,自2017年的135亿元增长到2022年的300亿元左右。但是国内的CDN市场规模仅为全球市场的15%-20%,海外CDN市场空间巨大。 接下来首先分享下如今行业内

    2024年02月09日
    浏览(40)
  • 如何从零配置腾讯云cdn加速服务?

    开通腾讯云账号并通过实名认证,有关实名认证的更多问题请参考 实名认证基本介绍; 开通 CDN/ECDN 服务; 腾讯云 CDN 支持中国境内和中国境外两个服务区域,目前默认提供按流量小时计费方式。有关计费规则的更多说明,请参考 计费说明。 勾选统一服务条款后,单击开通

    2023年04月17日
    浏览(46)
  • CDN加速要怎么使用?一分钟教你使用CDN

    互联网行业的发展脱离不开越来越多人生活习惯的变动,比如以前我们在线下购物,现在我们在线上抢购,虽然以前的经营模式并没有产生变化,但因为互联网的进军,大众的生活已经不能没有网络了。但光有网络没有足够好的服务肯定是不行的,因为越来越多的网民出现,

    2024年02月12日
    浏览(40)
  • 使用国际阿里云CDN加速和OSS传输加速区别是什么呢?

    详细信息 阿里云对象存储OSS以海量、安全、低成本、高可靠等特点已经成为用户存储静态资源和文件的首要选择,实际使用中面向全球各地用户访问OSS资源时,访问速度会受到客户端网络、OSS的下行带宽、Bucket地域、访问链路长等限制出现访问慢的情况。以下主要介绍CDN加速

    2024年02月13日
    浏览(46)
  • 【阿里云OSS对象存储搭配CDN加速使用】

    内容分发网络CDN (Content Delivery Network)是建立并覆盖在承载网之上,由遍布全球的边缘节点服务器群组成的分布式网络。将源站内容分发至 最接近用户的节点 ,使用户可就近取得所需内容, 提高用户访问的响应速度和成功率 。解决因分布、 带宽、服务器性能带来的访问延

    2024年02月09日
    浏览(41)
  • vue项目打包优化:缩小体积productionSourceMap设置,使用cdn加速

    一、vue项目打包体积大优化之productionSourceMap设置 1、productionSourceMap 的作用 productionSourceMap 在构建时生成完整的 SourceMap 文件,默认情况下开启。生产环境中启用 productionSourceMap 有助于开发者调试代码,可以在浏览器的调试工具中查看到源文件中错误的代码位置,而不是编译后

    2024年02月21日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包