本文来自 悟尘纪,获取更新内容可查看原文:https://www.lixl.cn/2020/0209...html
Hexo部署插件,支持将静态博客发布到腾讯云、阿里云对象存储中,并同步刷新被更新文件的CDN缓存。node
详见博文:hexo-deployer-cos-cdn 插件安装使用指南。按量付费,通常访问量不高的话,体验期事后一个月也花不了几块钱。git
COS
+ Github Pages
Ctrl + v
一键粘贴包括多张图片和文本组成的混合内容并实时预览,内容编辑所见即所得。hexo g -d
一键发布到多个托管平台(如Github+COS)。推荐使用 Typora + 本插件 实现如上体验。Typora
配置参照下图:github
通过以上配置之后,在 Typora
中编辑 MarkDown 文档时,截图后直接 Ctrl + v
便可粘贴并实时预览。尤为是一键粘贴包括多张图片及文本的混合内容,并保留原格式很是方便。hexo d
部署之后,网站及图片会自动上传到云对象存储中。npm
npm install hexo-deployer-cos-cdn --save
deploy: type: cos-cdn cloud: tencent bucket: blog-1234567890 region: ap-shanghai secretId: AKIDIgxxxxxxxxxxxxxxxxxxxx0SepjX secretKey: qXPCbxxxxxxxxxxxxxxxxxxxxsJZfdR
如上配置,图片和文件将发布到 腾讯云的 同一个 bucket 中,默认开启CDN加速,CDN加速域名为 _config.yml
中配置的 url
,图片上传后,Markdown 源文件中图片依然是相对路径。api
deploy: type: cos-cdn cloud: tencent bucket: blog-1234567890 region: ap-shanghai secretId: AKIDIgxxxxxxxxxxxxxxxxxxxx0SepjX secretKey: qXPCbxxxxxxxxxxxxxxxxxxxxsJZfdR imageConfig: cloud: aliyun cdnUrl: https://pic.lixl.cn bucket: lxl80 region: oss-cn-beijing folder: static cdnEnable: false deleteExtraFiles: false #谨慎开启 secretId: AKIDIgxxxxxxxxxxxxxxxxxxxx0SepjX secretKey: qXPCbxxxxxxxxxxxxxxxxxxxxsJZfdR
如上配置,文件将发布到 腾讯云 的 bucket 中,图片发布到阿里云的 bucket 中。图片使用单独的 CDN 加速域名。图片cdn没有开启CDN换新及删除多余文件功能。缓存
deploy: - type: git repo: https://github.com/lxl80/blog.git branch: gh-pages ignore_hidden: false - type: cos-cdn cloud: tencent bucket: blog-1234567890 region: ap-shanghai cdnEnable: true deleteExtraFiles: true updatePosts: true secretId: AKIDIgxxxxxxxxxxxxxxxxxxxx0SepjX secretKey: qXPCbxxxxxxxxxxxxxxxxxxxxsJZfdR imageConfig: cloud: aliyun cdnUrl: https://cdn.jsdelivr.net/gh/lxl80/blog@gh-pages/static bucket: lxl80 region: oss-cn-beijing folder: static cdnEnable: false deleteExtraFiles: true #谨慎开启 secretId: AKIDIgxxxxxxxxxxxxxxxxxxxx0SepjX secretKey: qXPCbxxxxxxxxxxxxxxxxxxxxsJZfdR
如上配置,须要安装 hexo-deployer-git 插件。会同步将网站发布到 Github Pages 及 云对象存储 中;若是 bucket 中有多余文件会删除;图片上传成功后,会将 Markdown 源文件中图片路径替换为 CDN 地址。bash
若是嫌 Github Pages
国内访问致使html页面加载太慢,能够经过 netlify 来提速。在 netlify 中基于 git 建立站点,关联 github 仓库,之后经过 hexo g -d
一键部署时,netlify 中的内容也会自动更新。示例站点: https://netlify.lixl.cn/markdown
也可使用免费的 jsDelivr CDN 来加速,如上面示例的 cdnUrl
配置成了 jsDelivr CDN 加速地址,这样配置的话,图片在阿里云OSS中只保存备份,用户访问的是基于免费的 jsDelivr CDN 来加速 Github 图床的效果,全球访问速度都很快,还省去了占网站流量大头的图片流量 CDN 加速成本。 详情可参见博文:使用Typora + PicGo 图床 + jsDelivr CDN实现高效 Markdown 创做。hexo
补充: jsDelivr 是惟一具备中国政府颁发的有效ICP许可证的全球公共CDN,其直接在中国大陆设有数百个节点。
type
: 固定填: cos-cdncloud
: 指定云服务商,目前支持阿里云 aliyun
和腾讯云 tencent
bucket
和 region
: 以腾讯云为例,进入控制台 - 对象存储 - 存储桶列表 页面,存储桶名称即: bucket
,所属地域代号即: region,参照下图红框圈住的部分:secretId
和 secretKey
:以腾讯云为例,进入控制台 - 访问管理 - 访问秘钥 - API秘钥管理,参照下图红框圈住的部分:cdnEnable
: 是否启用CDN加速,默认为 true
,若是为 false
,将不会刷新 CDN 缓存。deleteExtraFiles
: 是否删除云端多余文件(本地不包含的文件),默认为 false
,请谨慎选择。updatePosts
:是否更新 Markdown 源文中的图片地址为CDN路径。默认为 false
,若是设置为 true
,以后再次修改 imageConfig.cdnUrl
时,须要手动将 Markdown 源文中的图片地址批量替换为相对路径,不然不生效。imageConfig.cdnUrl
: 用于存储图片的 bucket 绑定的 CDN 加速域名。对费用敏感的话,能够参考与其它部署插件共存的配置示例,采用 jsDelivr CDN 节省流量成本。imageConfig.folder
:本地博客 hexo/source/
目录内,用户存放本地图片文件的目录。MIT