以前博客一直托管在Coding上,但是最近Coding的托管出了些问题,又赶上轻量应用服务器优惠力度很大,所以决定将博客、图床以及文件都放置到轻量应用服务器上,并以此文加以记录。

安装软件

将博客部署到服务器上前,需要安装git和nginx

yum install git

yum install nginx

配置nginx

在服务器上创建一个文件夹,用来存储Hexo生成的静态文件

mkdir /var/www/blog

编写nginx配置文件

vim /etc/nginx/conf.d/blog.conf

由于没有备案,所以这里使用8081端口

server
{
  listen 8081;
  root /var/www/blog;
}

重新启动nginx,让配置生效

systemctl restart nginx

配置Git Hooks

创建Git仓库

创建blog.git作为远程的Git仓库,Hexo在本地生成的博客静态文件通过push同步到本仓库

mkdir ~/blog.git && cd ~/blog.git

git init --bare blog.git //git init –bare

配置Hooks脚本

post-receive脚本将在blog.git仓库接收到push时执行

vim blog.git/hooks/post-receive

脚本内容就是删除原有的/var/www/blog目录下的内容,然后从blog.git仓库clone新的博客静态文件。

\#!/bin/bash

rm -rf /var/www/blog
git clone /root/blog.git /var/www/blog 

给post-receive脚本添加执行权限

chmod +x blog.git/hooks/post-receive

部署Hexo博客

修改_config.yml

deploy:
 type: git
 repo: root@ip:/***/***/***.git

部署博客

hexo d

然后通过 http://ip:8081/ 即可访问博客。

备案之后,将ngnix端口改为80,把server_name设为域名,然后修改DNS解析到云主机就好了。