一、前言
本站搭建的简单记录。
部署在云服务器上,系统用的CentOS7,Web服务器用的Nginx。
Hexo简介
Hexo 是一个基于 Node.js 的静态博客框架,可以快速、简单地搭建个人博客网站。 使用Markdown,支持自定义主题和插件。Hexo官网
二、部署Hexo
Hexo文档
1、环境说明
- CentOS 7.8
- Nodejs 14.18.1
- Nginx 1.13.7
- pm2 5.3.1
2、准备工作
Hexo是基于Nodejs的,所以要先安装Nodejs,但在此之前先在官网文档上看一下版本限制。
但一般Nodejs是都已经有了,然后也有了npm,问题在更新版本上。
安装和更新Nodejs建议用一些Node版本管理工具,比如我用的n,或者其他nvm什么的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| #1、安装n npm install -g n
#2、用n安装指定版本的Nodejs: #直接 “n 指定版本号”就行 n 14.18.1 #切换版本也是直接“n 指定版本号”
#n的其他命令: #装最新的 n latest #装最新稳定的 n stable #查看已经安装的Nodejs n ls #删除 n rm <version>
|
3、安装运行
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| #1、直接全局安装hexo-cli npm install hexo-cli -g #装好后就可以使用hexo命令了,直接输入hexo会显示信息
#2、创建hexo目录,初始化并下载依赖 #按着自己习惯的找个地方创建目录 mkdir /usr/local/hexo #在这个目录里初始化hexo hexo init #下载依赖 npm install
#3、运行hexo #直接输入命令,就可以跑起来了 hexo s #默认端口是4000
|
4、后台运行
后台运行用的pm2,可以用shell脚本实现。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| #1、安装pm2 npm install -g pm2
#2、写pm2要执行的脚本 #hexo目录下创建一个文件hexo.js vim /usr/local/hexo/hexo.js
#里面写这些 const { exec } = require('child_process') exec('hexo s -p 4000',(error, stdout, stderr) => { if(error){ console.log('exec error: ${error}') return } console.log('stdout: ${stdout}'); console.log('stderr: ${stderr}'); })
#主要就是留意第10行,其中的'hexo s -p 4000'也就是这段代码要执行的命令 #看得出来就是hexo s而已,然后指定上端口4000,其实不指定也行默认就是4000
#3、然后执行 pm2 start hexo.js
#其他pm2的命令: #启动 pm2 start xx.js #停止 pm2 stop xx #重启 pm2 restart xx #显示当前运行的所有应用程序 pm2 list #查看详细信息 pm2 show xx #从进程列表中删除应用程序 pm2 delete xx
|
5、反向代理
1 2 3 4 5 6 7 8
| server { listen 80; server_name xxx.com;
location / { proxy_pass http://localhost:4000; } }
|
三、安装主题A4
1、A4主题
「仿A4纸张的一个hexo极简主题。主打一个简洁,体积小,配置少。」
「让读者专注于阅读文字,写者专注于写作。」
「官方文档。」
2、安装
上面的使用文档里也有。讲得很清楚。
1、更改Hexo配置文件
首先把Hexo目录下的配置文件_config.yml的主题设置一下。
theme: hexo-theme-a4
2、npm下载主题
在目录下用npm下载
npm install hexo-theme-a4@latest
最终只要保证Hexo目录下的themes文件夹里存在hexo-theme-a4的主题文件夹就行了。
3、设置A4主题配置文件
在themes/hexo-theme-a4
的目录下也有_config.yml
,其中就是A4主题的配置,直接修改就能生效。