基于阿里云服务器+Hexo搭建个人博客

服务器

阿里云

域名与SSL

腾讯云的域名购买+备案

阿里云DNS解析(腾讯云解析已设置托管到阿里云,那边不生效)

httpsok自动续费SSL(但免费版有额度,考虑切换到certbot)

博客搭建系统

hexo

步骤

  • 在本机使用NodeJS npm安装即可

同步方式

hexo deploy(git)

步骤

本机

  • 生成ssh密钥对(注意目录权限要正确,700和600,否则拒绝连接),并将公钥上传到服务器

  • 配置文件

服务器端

  • 新建目录用于存储博客,如~/mine/blogs

  • 新建仓库用于同步数据,如在家目录下git init --bare hexo.git

  • 新建post-receive钩子,用于在接收到内容后复制到blogs目录下

    • 注意:**post-receive钩子只有在git内容更新时才执行!**被这个耽误了好久,还以为是Git版本不支持之类的问题。
  • 配置服务器(这里以nginx为例)

    • 在443端口的解析中,将根目录设置为上面新建的目录

Windows Terminal ssh连接服务器时,过一段时间不操作就会断连(卡住)的问题:是由于Windows Terminal不会自动发送心跳包,可参考此文章解决。

图床

利用同机房OSS+服务器实现免外网流量、安全传输。

步骤

评论系统

使用utterances,参考文章,valine每次还要输入有点麻烦,gitalk配置较麻烦,于是选用同样基于Github Issue的utterances,hexo原生支持,很方便。

博客备份

上次搭建博客的时候用的是基于Github的方案,没有备份博客的源文件仓库(.md等),仓库里只有hexo生成的博文(即.deploy_git文件夹),难以恢复。这次重新搭建之后,痛改前非,参考此文章,基于用Hexo事件实现每次hexo d的时候,也自动把源文件提交到另一个仓库,这样以后即使换了电脑也不怕博文丢失,并且还可以实现异地写作。

此外,用另一个hexo工程新建个人学术页面后,同理将其同步到同一仓库的academia分支上,以后约定都同步在此仓库。

参考链接

Hexo+阿里云,手把手教你如何搭建属于自己的个人博客(超详细) - 到站了还不下车的文章 - 知乎
https://zhuanlan.zhihu.com/p/126243913


基于阿里云服务器+Hexo搭建个人博客
https://mfqwq.cn/2025/01/15/blog-env-config/
作者
murphyqwq
发布于
2025年1月15日
许可协议