介绍:文章介绍了如何将Hexo博客托管到华为云OBS并使用CDN加速访问。首先配置OBS对象存储桶,上传Hexo静态文件到OBS,然后通过插件实现自动部署。接着开启CDN加速,包括配置加速域名和DNS记录,并进行相应的可选配置。整个过程简单清晰,让Hexo博客在云端获得更好的访问加速和托管效果。
我这里选择的是华为云的全家桶,使用华为云OBS+CDN服务进行托管。因为Hexo生成的是Html的静态网页,对象存储OBS刚刚好可以托管静态网页,还可以加上CDN进行网站的加速访问。
hexo的静态博客
备案的域名一枚
华为云开通OBS和CDN产品
下载 OBS Browser+
在控制台 - 选择OBS进行开通 - OBS 管理控制台
2.然后在页面上,输入存储通名称,选择存储的区域和存储类别,桶策列选择 公共读。(PS:如果你准备购买存储包建议认真选择好对应区域)
3.配置OBS桶的静态网站托管
配置静态网站 - 把状态点选上 - 设置默认主页index.html
每次运行 hexo g
生成静态文件后,我们需要把这些生成的静态文件上传到存储桶中,Hexo生成的静态文件在根目录的 public
文件夹中。
拖拽本地 public
目录下全部文件,通过控制台 - 上传对象 来进行上传。
由于生成的都是静态文件,我们每一次操作hexo生成静态文件后,都要通过控制台进行手动上传,这样比较麻烦。有没有一劳永逸的方法,答案是有点。
我们可以使用 hexo-deployer-huaweicloud-obs 这个插件来进行快速部署,省去自己每一次都要手动上传的烦恼。
安装 hexo-deployer-huaweicloud-obs
打开hexo的目录下,打开Bash终端输入以下命令进行安装
npm install hexo-deployer-huaweicloud-obs --save
申请 访问密钥 (AK和SK)
获取访问密钥(AK和SK) 通过该链接可以直达我的凭证页面。或者在用户名 - 我的凭证进入。
生成密钥后,会自动下载下来 .csv 的文件,里面包含AK和SK的密钥信息。记录下来,待会有用上。
配置 hexo-deployer-huaweicloud-obs
在Bash终端安装好 hexo-deployer-huaweicloud-obs 插件后,在hexo的根目录下找到 _config.yml
添加以下配置:
deploy:
type: "huaweicloud-obs"
server : "https://obs.cn-north-1.myhwclouds.com"
bucket: "obs-2f97"
accessKeyId: "R7DYQD3DQRRLTDWYttE3S"
secretAccessKey: "TERHf0NGpDrbhsbc1h3xymB9w22wK8lLgOhdgFkgjCB2"
localFilesIgnorePattern: "^\\..*"
remoteDir: "/"
syncDeletedFiles: "yes"
syncDeletedFilesIgnorePattern: "^\\..*"
配置说明如下:
在左侧导航栏 - 访问权限控制 - 桶策略。
点击创建新的桶策略,选择 公共读
的模板进行创建。
然后编辑策略,在授权操作 - 选择动作 - 桶动作 - 新增 ListBucket
看看创建完成后,检查授权动作,然后保存桶策略。
每一次更新博客,通过Bash终端在 Hexo 的根目录输入命令生成静态文件并自动部署。
hexo d -g
看到这个就上传成功,可以在存储桶查看刚刚上传文件。
OBS在开启静态网站托管后,默认的域名并不能直接访问。如果我们选择OBS来进行访问不加CDN的话,会产生大量的流量消耗费用。
我们需要对应存储对象控制台中,找到域名管理 - 配置加速域名。
服务范围选择"中国大陆" - 业务范围"网站加速" - 填写加速域名 - 静态网站托管也勾选。
然后在域名的DNS管理面板,新增一条CNAME的记录。
添加解析后,回到 CDN控制台 进入刚刚添加的域名。
然后进行可选的配置,SSL证书、设置缓存规则和设置浏览器缓存的过期时间等等操作。
—— 评论区 ——