CDN优化头疼很久,一开始用的github page,访问始终太慢。后来换了腾讯云和又拍云,用站长工具测试还可以,但是自己访问总是比较慢,找不到哪里出了问题,干脆还是换成免费的JsDelivr + Netlify,既免费又省心。以后直接git push代码之后,Netlify会自动部署。

Netlify 设置

Netlify 在Hexo中的帮助文档有简单介绍,分为两种生成方式

  • 直接拉去github里面的静态文件部署
  • 拉取source目录和配置文件,在Netlify编译部署。

Netlify支持Github/Gitlab/BitBucket,这里我们以Github为例子。这里主要介绍第二种方法,第一种方法直接跳到猫店。

Github 创建源文件项目

首先去Github创建一个项目用来存储博客源文件,私有公共都可以,这里个人建议用私人的,反正Github有免费额度。

然后将本地博客目录上传到github。主要包含source目录,_config.yml,主题配置文件,package.json等文件

Netlify 配置

拉取代码

这里选择你上传文件代码的仓库

选择你要拉取的项目

选择分支,点击build settings 设置编译命令和目录

配置编译命令和目录,其他的地方可以暂时不配置

创建站点成功后Netlify会自动部署,部署成功后determined-keller-e0834c.netlify.app 就是站点域名

域名配置

域名配置有两种方式,一种是只将域名解析到Netlify中,另一种是使用Netlify 的DNS服务。

只将域名解析到Netlify

回到创建的Team中,点击Sites里面部署成功的站点

点击 Domain settings

Domain 中添加你的域名,并获取解析记录

最后在你的域名服务商的解析里面添加解析记录即可

将DNS服务器更换到Netlify

回到创建的Team中,点击上方的Domains,进入域名配置页面

如果使用Netlify的,请回到创建的Team中,点击上方的Domains,进入域名配置页面。

然后进入你的域名服务商,将DNS服务换成 Name Servers 提供的4个服务器地址。再将原来的DNS解析记录复制到Netlify里面。

回到你部署成功的站点,点击 Domain settings

Domain 中添加你的域名,使用 Netlify DNS就会自动添加解析记录

JsDelivr 静态文件CDN优化

在Github中创建一个公共项目,用来存放博客中用到的静态文件

例如:https://github.com/HeySoyl/cdn-busuanzi

然后修改你博客里面的静态文件引用路径,修改为https://cdn.jsdelivr.net/gh/用户/项目/路径.js

例如:https://cdn.jsdelivr.net/gh/heysoyl/cdn-busuanzi/js/search/local-search.js

更加详细的用法请参考JsDelivr中介绍