如何将Hexo博客部署至宝塔面板?

📝前言

数字化时代,拥有个人博客是记录生活、分享知识、展示自我的优质载体。Hexo 作为高效简洁的静态博客框架,凭借快速生成静态页面、易配置、可扩展性强的优势,成为开发者与博主的首选。它基于 Node.js 运行,结合 Git 版本控制,可轻松实现本地预览与多平台灵活部署。本教程专为零基础新手打造,以通俗语言搭配清晰步骤和代码示例,拆解从环境准备到云端部署的完整流程,涵盖核心操作与实用技巧,无需复杂编程基础,即可让你快速拥有专属静态博客,开启博客之旅。

[!TIP]

本教程是将Hexo博客托管至服务器宝塔面板的教程,本教程需要一些基础的计算机知识和耐心。

域名、服务器推荐阿里云、腾讯云

拥有自己的网站后可到本站友链页面申请添加友链。

✨一.环境准备

1.Node.js安装

Node.js 是 Hexo 的运行环境,必须先安装。

  1. 打开Node.js官网
  2. 下载LTS稳定版
  3. 按默认选项完成安装
  4. 打开命令提示符验证版本
1
node -v

如果能正常输出版本号,就说明安装成功!

为了提升依赖安装速度,建议顺手切换 npm 镜像源:

1
npm config set registry https://registry.npmmirror.com

2.安装Git

Git用于管理博客源码,也用于后续部署。

  1. 打开Git官网下载页
  2. 按默认选项完成安装
  3. 安装后执行以下命令确认是否正常
1
git --version

3.安装Hexo

打开安装好的Git Bash运行

1
npm install -g hexo-cli

进行安装,之后运行验证是否安装成功

1
hexo -v

✨二.新建Hexo项目

环境安装完成以后,就可以正常创建博客了。

1.初始化项目

在你想放置博客的位置打开终端,执行:

1
2
hexo init <项目名>
cd <项目名>

例如:

1
2
hexo init my-blog
cd my-blog

2.安装依赖

1
npm i

安装完成之后,一个基础的Hexo就已经创建好了!

✨三.本地预览博客

为了确认博客能否正常运行,建议先进行本地预览。

1.生成静态文件

1
hexo generate

2.启动本地服务

1
hexo server

浏览器打开:

1
http://localhost:4000/

如果页面能正常打开,就说明博客已经运行成功。

[!NOTE]

常用的缩写命令也可以记一下:hexo cl; hexo g; hexo s

✨四.安装与配置主题

默认主题就能使用,但是不够好看。大多数人都会更换成更适合博客展示的主题。

1.选择主题

如果你想快速做出更完整的个人博客,优先推荐更成熟的主题文档,例如:

2.安装主题

不同主题安装方式略有不同,一定要以官方主题文档为准。

3.修改主题配置

一般会涉及两个部分

  • Hexo全局配置_config.yml
  • 主题自己的配置文件

[!WARNING]

主题的配置文档一定要认真观看,很多的页面空白、样式错乱、文章不显示等问题,往往都是配置漏改或错改导致的。

✨五.部署到宝塔面板

如果你无服务器,也可以选择GitHub Pages这个非常常见的方案,但本文将以将Hexo部署到宝塔面板为主!

1.宝塔面板安装Git

[!NOTE]

因服务器可能是不同的系统可能安装命令也会有所改变,其他系统的安装命令可在Git官网查找。本教程的服务器系统为Ubuntu

在宝塔面板终端运行下列命令。

1
apt-get install git

安装完成后 检查是否安装成功。

1
git --version

如果出现版本号 说明已经安装成功。

2.添加站点目录

这里以xwdblog.top为例 创建完成后:

1
/www/wwwroot/xwdblog.top

这个目录以后就是 Hexo 最终文件目录。

3.创建Git仓库

1
mkdir -p /www/git

进入:

1
cd /www/git

4.创建Git裸仓库

1
git init --bare hexo.git

完成后:/www/git/hexo.git就是远程Git仓库

5.配置 Git Hook 自动部署

  1. 进入hooks目录

    1
    cd /www/git/hexo.git/hooks
  2. 创建post-receive

    1
    vim post-receive

    i进入编辑模式

    输入:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    #!/bin/bash

    GIT_REPO=/www/git/hexo.git
    TMP_GIT_CLONE=/tmp/hexo
    PUBLIC_WWW=/www/wwwroot/blog

    rm -rf $TMP_GIT_CLONE

    git clone $GIT_REPO $TMP_GIT_CLONE

    rm -rf $PUBLIC_WWW/*

    cp -rf $TMP_GIT_CLONE/* $PUBLIC_WWW
  3. 保存退出

    • ESC
    • 输入:wq
    • 回车

6.赋予执行权限

1
chmod +x post-receive

✨六.云端部署

  1. 安装 hexo-deployer-git

    进入Hexo博客目录

    1
    cd 你的Hexo目录

    安装:

    1
    npm install hexo-deployer-git --save
  2. 修改 _config.yml

    找到:

    1
    deploy:

    改成:

    1
    2
    3
    4
    deploy:
    type: git
    repo: root@服务器IP:/www/git/hexo.git
    branch: master

✨七.配置 SSH 免密码登录

  1. 本地生成SSH Key

    在博客文件夹里,右键打开Git Bash Here

  2. 生成SSH密钥

    1
    ssh-keygen -t rsa

    连续按 3 次回车,不要设置密码!

  3. 复制公钥到服务器

    1
    cat ~/.ssh/id_rsa.pub

    把输出的一长串内容全部复制

  4. 在宝塔终端执行

    1
    2
    mkdir -p ~/.ssh
    vi ~/.ssh/authorized_keys

    i进入编辑,粘贴你刚才复制的公钥,

    ESC,输入:wq保存退出

  5. 赋予权限

    1
    2
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
  6. 测试免密

    回到Git Bash

    1
    ssh root@服务器IP
  7. 测试成功连接上服务器SSH之后 就可输入部署指令了

    1
    hexo cl; hexo g; hexo d

📚 总结

Hexo 的建站流程并不复杂,你只需要记住这条主线:

  • 安装 Node.js、Git、Hexo
  • 初始化博客项目
  • 本地预览
  • 安装主题
  • 部署到宝塔面板