最近买了一个阿里云服务器,尝试将Hexo部署到阿里云上,这里提供一个参考

购买阿里云服务器

这个比较简单,会花钱就行,尽量找一个新注册的账号,这样可以花几十大洋 就可以购买一年的阿里云服务器

配置阿里云服务器

阿里云服务器的配置很简单,主要有:重置实例密码和配置安全组策略等
配置好之后,复制一下公网 IP,就可以开始建站了。

服务端安装Node.js

一键式安装配置Node.js

1
2
3
4
5
6
7
8
9
cd /tmp && wget https://nodejs.org/dist/latest/node-v23.8.0-linux-x64.tar.xz
tar xf node-v23.8.0-linux-x64.tar.xz
mv node-v23.8.0-linux-x64 /usr/local/node
ln -s /usr/local/node/bin/node /bin/node
ln -s /usr/local/node/bin/npm /bin/npm
echo 'export PATH=/usr/local/node/bin:$PATH' >> /etc/profile
source /etc/profile
node -v
npm -v

执行完就安装成功了

服务器端安装Git

一键式安装Git

1
2
3
4
5
6
7
8
9
10
11
yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
cd /tmp && wget https://www.kernel.org/pub/software/scm/git/git-2.41.3.tar.gz
--2025-02-15 20:52:01-- https://www.kernel.org/pub/software/scm/git/git-2.41.3.tar.gz
tar xf git-2.41.3.tar.gz
cd git-git-2.41.3 && make all prefix=/usr/local/git
make install prefix=/usr/local/git
echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc
source /etc/bashrc
git version
git config --global user.name "你的账号"
git config --global user.email "你的邮箱"

执行完就安装成功了,要注意的是客户端也需要安装一下 Git,图形化一直下一步就行。

服务器端安装Nginx

一键式安装Nginx

1
2
3
4
5
6
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
cd /tmp && wget http://nginx.org/download/nginx-1.27.4.tar.gz
tar xf nginx-1.27.4.tar.gz
cd nginx-1.27.4 && ./configure
make && make installmake && make install

配置Nginx服务:

1
2
3
4
5
6
7
8
9
10
11
## 创建 hexo 博客存放位置
mkdir /data/blog
## 修改 Nginx 配置文件
vi /usr/local/nginx/conf/nginx.conf

## 修改配置文件中以下几点
## 1、server_name,修改域名或ip
server_name 服务器公网IP;
## 2、root index.html,修改为 hexo 博客存放的位置
root /data/blog

打开Nginx服务:

1
2
3
cd /usr/local/nginx/sbin
# 启动 nginx
./nginx

至此Nginx也安装完成

More info: Generating

客户端安装Hexo

Hexo 也是一键式安装,安装前,设置一下 npm 源:

1
2
3
4
npm config set registry https://registry.npm.taobao.org
## 安装 hexo
npm install -g hexo-cli
hexo -v

本地客户端创建 Hexo 博客目录并初始化启动博客:

1
2
3
4
hexo init blog
cd blog
npm install
hexo server

启动之后本地浏览器 localhost:4000 访问一下是否成功。

服务器端创建Git仓库

服务器上创建一个 Git 仓库,该仓库中新建一个 post-receive 钩子文件。

1
2
3
4
5
6
7
8
cd ~
git init --bare hexo.git
vi ~/hexo.git/hooks/post-receive
## 填写以下内容,其中的--work-tree 为 hexo 博客目录
git --work-tree=/data/blog --git-dir=/root/hexo.git checkout -f
## 授予钩子文件可执行权限
chmod +x ~/hexo.git/hooks/post-receive
chmod -R 777 /data/blog

至此,Git 仓库创建并配置完成,对应的本地客户端也需要配置一下!

在本地计算机 hexo 的工程目录下,找到 _config.yml,对 deploy 参数进行修改,如下图所示

1
2
3
4
5
6
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repo: root@公网IP:/root/hexo.git
branch: master

在本地计算机安装插件: hexo-deployer-git 和 hexo-server,插件的作用分别是使用 Git 自动部署,和 hexo本地简单的服务器:

1
2
3
4
5
6
7
8
9
npm install hexo-deployer-git --save
npm install hexo-server
## 配置全局变量
git config --global user.name "你的账号"
git config --global user.email "你的邮箱"
## 生成发布 Hexo 博客
hexo clean
hexo generate
hexo deploy

此时,便可以通过浏览器访问 http:// 阿里云公网 IP 进入 hexo 我的博客主页了。