将Hexo博客同步部署到阿里云服务器


前两天闲来无事,买了个阿里云服务器玩玩,恰好发现此前放在github.io的博客网站经常被限流,日常登不上。于是就打算把现有内容迁移到服务器上,中间碰到的小坑记录一下。
在这里插入图片描述

服务器端设置

安装git与nginx

首先需要安装git以及nginx,因为阿里云服务器是CentOS,所以使用yum安装。

sudo yum install git
sudo yum install nginx

创建git仓库并使用hooks实现自动部署

cd /root
sudo git init --bare blogit.git	#创建一个叫blogit的仓库
sudo vim /root/blogit.git/hooks/post-receive

请注意,hooks目录内部没有post-receive,需要我们vim创建并保存,之后在post-receive增加下面两行,表明在/root/blogit.git/opt/hexo执行checkout -f命令,当我们把博客写好后更新,服务器端可以同步部署。

#!/bin/sh
git --work-tree=/opt/hexo --git-dir=/root/blogit.git checkout -f

保存,给权限。

chmod +x /root/blogit.git/hooks/post-receive

修改nginx默认打开界面

找到nginx配置文件,地址在/etc/nginx/nginx.conf

sudo vim /etc/nginx/nginx.conf

在这里插入图片描述

注意root这个地方改为hexo博客所在路径,与上面的git-hooks一致。

重新载入nginx,使配置生效。

/bin/systemctl reload nginx.service

阿里云服务器更改配置

阿里云默认关闭了HTTP与HTTPS的公网访问,需要更改防火墙,进入云服务器的控制台的安全组,并点击实例。
在这里插入图片描述

需要访问规则做如下更改。
在这里插入图片描述

本地设置

打开Hexo博客根目录下的_config.yml,将deploy下面修改为:

deploy:
- type: git
  repo: https://github.com/lxy-94/lxy-94.github.io.git
  branch: master
- type: git
  repo: root@服务器公网ip:/root/blogit.git
  branch: master

本地执行以下命令

hexo clean
hexo g
hexo d

下次更新后直接hexo d就可以同步到github与阿里云服务器。

哈哈,个人博客地址:我在云端跳舞,欢迎访问。

参考链接

从github迁移hexo博客到服务器

通过Git将Hexo博客部署到服务器

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值