HEXO,我来了!

最近麻烦事一大堆,先是多说宣布关闭服务,又是SSL证书和ECS快到期了,所以要计划在4月1日换个数据中心的ECS,然后使用HEXO作为我的博客程序,Disqus作为评论系统;就去研究了下HEXO的相关,记录经验;

当然我也不会放弃 GHOST 的,因为这是我从虚拟主机过渡到云服务器的一个见证;

环境

电脑是Windows,服务端是Debian;

安装HEXO

注意:HEXO和NodeJS是装到你本地电脑上的;

NodeJS的安装这里不再赘述了,我的博客里已经写过两篇包含NodeJS安装的文章了;

HEXO的安装我也不想再赘述了,因为 HEXO官方的教程 已经很详细了,所以我没必要再写了;

部署HEXO到服务器

我们这边使用Git的部署方法;

注意:有些命令是需要root权限的,请自行 susudo

服务器安装Nginx和Git

apt-get install nginx git-core  

然后新建名为Git的无密码用户

adduser git  

然后给权限,输入下面命令打开配置文件(前提是安装了sudo)

visudo  

root ALL=(ALL:ALL) ALL  

下面一行紧跟下面字符后保存退出即可

git ALL=(ALL:ALL) ALL  
上传SSH公钥

先切换到git用户

su git  

/home/git 目录下新建 .ssh目录

cd /home/git && mkdir .ssh  

然后在 .ssh目录里新建一个名为authorized_keys 的文件,并且将你电脑上生成的ssh公钥复制到这个文件里面,保存退出即可;

cd .ssh && vi authorized_keys  
创建Git仓库

进入到 /home/git 目录,输入下面命令创建名为 hexo的仓库

git init --bare hexo.git  

然后换用户和组

chown -R git:git hexo.git  
Git Hooks配置
vi /home/git/hexo.git/hooks/post-receive  

在里面输入

#!/bin/bash
GIT_REPO=/home/git/hexo.git  
TMP_GIT_CLONE=/tmp/hexo  
PUBLIC_WWW=/var/www  
rm -rf ${TMP_GIT_CLONE}  
git clone $GIT_REPO $TMP_GIT_CLONE  
rm -rf ${PUBLIC_WWW}/*  
cp -rf ${TMP_GIT_CLONE}/* ${PUBLIC_WWW}  

赋予可执行权限

chmod +x post-receive  

重启Nginx

/etc/init.d/nginx restart

配置HEXO

打开hexo的配置文件 _config.yml ,找到 deploy 项,修改如下;(注意写对服务器IP地址)

deploy:  
    type: git
    repo: git@IP:hexo.git

然后到hexo安装目录下执行

hexo g                # 生成静态页面

hexo d                # 部署静态页面到服务器  

进行部署静态页面到你的服务器的 /var/www 目录里,如果成功在浏览器打开你服务器ip地址就可以看到hexo页面了;

上一篇:  Debian从源安装最新版本Nginx
下一篇:  树莓派Respbian系统安装Nodejs  
评论

如果我的文章对你有帮助,或许可以打赏一下呀!

支付宝
微信
QQ