Hexo访问速度优化


Hexo访问体验优化

本文主要讲述, 如何使用腾讯云静态网页托管服务部署Hexo,以优化访问速度; 如何购买域名并进行备案,最终使用购买的域名访问Hexo博客

前言

背景

Hexo博客最初搭建之时,使用github page进行部署,jsdelivr进行cdn加速.当时的网页大概还有30s可以打开(毕竟免费).但是后续jsdelivr遭到污染后,访问速度直接降低了一半以上.后续要尝试过部署到gitee,但是访问速度并没有提升很多,博客还不支持自动更新(码云需要付费解锁),这得我最终放弃了git代码托管平台及jsdelivr

为什么使用腾讯云托管

为了优化访问速度,最终决定使用腾讯云静态网页托管服务进行部署.腾讯的托管服务不仅可以持续部署, 还会提供速度很快的cdn加速,更更重要的是以上可以做到全部免费 .

静态网站托管目前已经改为1个月免费试用期,无法做到完全免费了

为何要购买域名

天下没有免费的午餐,企鹅的做法是部署全部免费,但是博客访问链接会有一长串随机字符串.这样的产品设计对于个人博客来说,我直接一个字: 直击痛点! 此时我有萌生了购买域名的念头.我们现在可以通过腾讯云或者阿里云购买顶级域名,购买云服务器进行备案.而且一些新出的顶级域名非常便宜,100+就可以买到5年的使用权.考虑到我已经拥有了云服务器,而且我对于写博客比较上瘾(至少目前),我觉得还是挺划算的.

访问速度优化

主题关闭jsDelivr

我使用的是Matery主题,直接在配置文件中注释掉cdn加速链接即可

jsDelivr:
    url: # https://cdn.jsdelivr.net/gh/Feny-Lau/Feny-Lau.github.io #https://originfastly.jsdelivr.net/gh/Feny-Lau/Feny-Lau.github.io  

由于Matery代码特性,不能注释jsDelivr ,及url

腾讯云开发环境准备

  1. 创建云开发环境

    1. 登录腾讯云,开通云开发

    2. 应用来源选择模板仓库->Hexo,环境名称会显示在域名中,我这边使用英文名

    3. 付费方式选择按量计费,开启免费资源

      只有一个云开发环境可以开启免费流量

      创建环境

    4. 创建成功复制,环境id

  2. 托管静态网站

    1. 点击左侧静态网站托管,点击开始使用

    2. 等待初始化完毕的默认域名即为博客地址

      如果你有多个云开发环境,确认左上角的环境名是否是刚才创建的环境名

    静态网站托管

CLI工具部署hexo

  1. hexo 2 连生成代码

  2. 安装部署CLI云开发工具

npm i -g @cloudbase/cli

win使用默认终端打开,不要使用git bash

  1. tcblogin进行授权
tcb login

此时自动打开一个网页,确认授权

  1. 进入hexo 根目录目录进行
tcb hosting deploy ./public/ -e $EnvID  # $EnvID填写之前复制的id
  1. 打开博客地址进行查看显示效果

tcb部署命令比较复杂,后续部署可以写入到根目录一个sh文件中, 使用sh命令一键执行部署

优化结果

Hexo部署配置 响应时间(s)
jsdelivr(封禁前) + github 30
jsdelivr(封禁后) + github 70
腾讯云静态代码托管服务 5~15

Reference

云开发 CloudBase 搭建 Hexo-示例教程-文档中心-腾讯云 (tencent.com)

购买配置个人域名

域名购买,云服务器购买及网络备案均在腾讯云一站式进行,从开始购买到网站上线,时间周期大概为15-30天,总计花费大概为200+RMB

graph TD;
域名信息模板实名认证--等待信息模板审核-->购买个人域名,进入域名审核流程--等待域名审核-->域名注册成功--等待实名认证满72个小时-->提交网站备案信息--等待约10个工作日-->使用域名部署Hexo--测试域名访问成功-->hexo页面内添加ICP备案信息;
购买独立公网ip的云服务器-->提交网站备案信息;
使用域名部署Hexo-->登录公安局管理平台提交审核-->hexo网页添加公安局备案信息

以上审核信息均为实际的审核周期

关注腾讯云助手,方便获得适合进度通知

根据某B站up主实际操作,公安备案对个人网站好像不是必须的,但我还是建议你进行备案

购买域名,备案的具体流程

腾讯云内有非常详细的文档及通知指导你下一步如何操作,你所要做的就是要关注:

  1. 短信通知
  2. 腾讯云控制台的消息通知
  3. 腾讯云控制台页面中的帮助文档链接

除此之外,你还可以通过这些地方获得帮助:

  1. 右侧悬浮icon,搜索关键词获取相关文档
  2. 售后支持获取客服帮助

使用新域名配置静态托管

这一步你应该不会获得明显的提示,可参考官方文档:

云开发 CloudBase 自定义域名-开发指南-文档中心-腾讯云 (tencent.com)

  1. 进入此前托管的静态网站托管页面

  2. 配置信息选择详细配置进入自定义域名配置页面

  3. 自定义域名点击添加域名

    image-20220803123523053

  4. 根据提示添加SSL信息

  5. 刷新页面选择,完成添加

  6. 登录购买的域名确认是否成功

Hexo页面内添加ICP备案信息

如果你我和一样是Matery主题,直接在主题配置文件里面修改

icp:
  enable: true
  url: # 备案链接  填写 https://beian.miit.gov.cn/
  text: $备案icp号  如  粤B2-20090059-1

Author: Feny Lau
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source Feny Lau !
  TOC