一直想着搭建一个博客,便开始折腾了 ..
先是自己花了2月时间写了前后端,但有一天系统突然崩了..(还没来得及做备份)
So,就有了今天用VPS hexo搭建一个博客总结和经验分享。
本地安装Hexo
Hexo 依赖Node.js 和 Git, 首先将其下载
安装好后 ,安装hexo
npm install hexo-cli -g
初始化 hexo博客 名字任意
hexo init name
进入博客目录,安装相关插件依赖等
cd name
npm install
安装完成后, 本地检验一下
hexo g # 渲染 Source 目录下文件静态页面
hexo s # 本地服务验证效果
访问http://localhost:4000/ 查看效果
VPS 配置
首先需要配置CentOS EPEL 源 ,然后安装Nginx
sudo yum install epel-release
sudo yum install nginx
安装完成后启动服务
sudo service nginx restart
之后会看到Nginx的默认页
一些默认配置文件位置
1 | nginx 默认配置文件位置/etc/nginx/nginx.conf |
接下来就是要创建新的网站目录,这里以/var/blog/html为例
1 | sudo mkdir /var/blog/html |
在此目录创建index.html文件,写个以下内容,用于测试服务是否运行正常<html> Testing ..</html>
在 /etc/nginx/conf.d/default.conf 配置如下
1 | server { |
本机访问VPS的IP (需要重启nginx)
如果没有出现 Testing .. 那么恭喜你 也要开始爬坑了 ==
//此处为本人无法正常访问的爬坑经历,可正常访问者跳过//
查看nginx 的错误日志 显示 “ 403 forbidden (13: Permission denied) ”
可能出现以下几种情况
- 网站目录权限
- SELinux
解决方法
part 1:
1 | sudo chmod -R 777 /var/blog/html/ # 给权限 |
part 2:
1 | sestatus # 查看SeLinux状态 |
若显示SELinux status: enabled
可将 SELINUX = enforcing 修改为 disabled
1 | sudo vim /etc/selinux/config # 进入配置项修改 |
重启服务器
1 | reboot |
//说明//
1 | SELinux 为ContOS 的一个内核安全性机制 。 |
部署 hexo 到 服务器
hexo 可使用 git 部署
首先在 VPS 上安装 git
1 | yum install git |
创建空白 git 仓库,并且设置 git hook
1 | cd ~ |
在 /root/blog.git/hooks/post-receive
编辑以下内容
1 | !/bin/bash |
赋予脚本的执行权限
1 | sudo chmod +x post-receive |
配置本机环境
在博客目录下运行下面命令,安装 git 部署工具。
1 | sudo npm install hexo-deployer-git --save |
修改博客的配置文件 _config.yml
,修改 deploy 选项:
1 | deploy: |
然后运行 hexo d
部署本地渲染网页到服务器上。
更新博客
使用一款 MarkDown 编辑器写 Blog 。写完后将文件以 *.md 的格式保存在本地[网站目录]\source\_posts
中。文件编码必须为 UTF-8,这一点仅 Windows 用户需注意。
每篇 Blog 都有固定的参数必须填写,参数如下,注意每个参数的 : 后都有一个空格。
1 | title: title |
编写完后,只需要在 hexo 文件夹下执行hexo g && hexo d
,博客即可更新。