使用宝塔面板配置hexo并设置本地git推送
远端服务器配置
一、安装宝塔面板
参照宝塔官方教程。https://www.bt.cn/new/download.html
二、部署hexo
安装node
在宝塔应用商店中搜索nodejs,之后安装。

依次点击网站-Node项目-Node版本管理器,选择最后一个稳定版本安装

安装hexo
创建根目录

进入刚才新建的目录(使用ssh连接服务器或者使用宝塔终端)
1
2cd / #回到根目录
cd www/wwwroot/blog.abcde.com #进入刚才新建的目录使用npm安装
1
npm install hexo-g
设置hexo的环境变量
1
ln -s /www/server/nodejs/这里填写刚才安装的node版本号如上图V16.20.2/lib/node_modules/hexo/bin/hexo /usr/bin/hexo
进行初始化
1
hexo init
生成静态文件
1
hexo g
新建网站

设置网站运行目录

到此为止hexo已经部署完毕,在浏览器中输入域名就可以正常访问。这时可以在网站设置-SSl中开申请证书开启SSL访问。

安装git并配置
1.安装git(使用ssh连接服务器或使用宝塔面板,例子系统为centos,其他系统请自行查阅相关命令,此例子没有使用git用户,直接使用root用户进行git推送)
1
yum -y install git
2.搭建Git仓库
进入你希望建立仓库的目录,此处以/home为例
1
2cd / #回到根目录
cd /home #进入home目录建立一个名称为hexo.git的仓库,仓库名可随意,但一般以.git结尾
1
git init --bare hexo.git
3.配置Git仓库
资源钩子
post-receive 是 Git 提供的一个Hook:它会在接收 post(push) 请求之后执行
在宝塔面板文件管理器进入home/hexo.git/hooks目录并双击编辑 post-receive 文件,如果hooks目录不存在可以手动添加
post-receive文件必须在终端或者通过其他ssh工具连接服务器新建,命令如下
1
vim post-receive #之后粘贴如下面的代码,或者直接保存空文件,在宝塔里编辑,粘贴如下面命令。关闭时先点击esc,然后输入:wq回车

在post-receive文件中写入以下代码并自行替代变量
1
2#!/bin/sh
git --work-tree=[网站根目录] --git-dir=[git 仓库路径] checkout -f #例子中的网站根目录为/www/wwwroot/blog.abcde.com/public git仓库路径为/home/hexo.git 请根据实际情况自行替换为钩子程序添加可执行权限(ssh连接服务器或宝塔终端连接)
1
chmod +x /home/hexo.git/hooks/post-receive
服务器端配置到此结束,下面为本地配置(有些配置需服务器端和本地端交叉设置,请灵活运用)
本地配置
一、配置环境
- 安装node
地址:https://nodejs.org/
检查node安装情况
1
2node -v #查看node版本
npm -v #查看npm版本安装git
二、安装hexo
创建hexo目录,如H:/blog,以后所有的信息都会保存在此目录,如果出现问题可以把此目录删除重新搭建。
安装hexo框架(win+r 输入cmd回车)
1
npm install -g hexo-cli #安装hexo框架
初始化hexo
进入刚才创建的hexo目录(以H:/blog为例)
1
2H:
cd blog初始化hexo
1
2hexo init #生成博客,初始化hexo
hexo s #启动本地hexo服务此时在浏览器中输入http://localhost:4000应该能看到hexo已经安装成功
配置git推送
打开H:/blog文件夹中的_config.yml文件,在最后的deploy那里替换如下代码
1
2
3
4deploy:
type: git
repo: root@你的云服务器ip或域名:/home/hexo.git #这里替换你的服务器IP或域名,后面的为你git仓库目录,这里参看上面配置服务中3.2
branch: master
至此所有配置完成,发博客一般为如下流程:
1 | #打开终端,进如博客博客目录,如H:/blog |
也可以使用Tpore等支持markdown语法的编辑器编辑,所有博客文章保存在博客目录\source_posts文件夹中
此文参考如下文章,表示感谢