hexo是一个静态网页博客系统,网上大多数教程是将hexo的博客系统搭建在github上。这里主要记录一下在树莓派如何部署。

安装Node.JS

# 从 https://nodejs.org/zh-cn/download/ 获得最新版本的下载地址
wget https://nodejs.org/dist/v8.11.3/node-v8.11.3-linux-armv7l.tar.xz
tar -xvf node-v8.11.3-linux-armv7l.tar.xz
cd node-v8.11.3-linux-armv7l/bin/
# 查看安装的node版本号是否正确
./node -v

# 查看NPM版本号
./npm -v

#完成解压后,我们将 Node.js 的二进制包移动到 /usr/local/node 中,操作如下
sudo mv node-v8.11.3-linux-armv7l /usr/local/node
# 如果系统内原本存在 /usr/bin.node ,先将其删除
sudo rm -rf /usr/bin/node
# 修改权限
sudo chown -R pi.pi /usr/local/node

安装hexo

sudo npm install hexo-cli -g
# blog可以更换成任何像存放网站的文件夹的名字
hexo init blog
cd blog
npm install
# 启动hexo 服务,只有启动了网站才能访问
hexo server

上面使用 hexo server启动服务后,通过树莓派的IP地址:4000端口,就可以访问hexo网站了,但是这时候是直接解析的.md文件,据说性能一般,所以hexo还需要通过

# 将md文件生成index.html的标准静态网站页面
hexo g

所以,我的理解是, hexo是一个从md格式转成html静态页面的编译器。
在生成Html文件后,所有文件会保存在public文件夹下,可以直接将这个文件复制到nginx的服务器目录下,然后就可以通过nginx服务器访问静态网页了。

hexo g
cp -r /public /var/www/html/

复制到nginx后,网页主题失效的问题

在使用 hexo g生成静态网页前,需要_config.yml文件中修改hexo对应的网址和主目录。

# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: http://你的网站使用的外网网址/public
root: /public

修改完成后,重新生成一遍,再复制到nginx下就可以正常显示

Last modification:October 2, 2018
如果觉得文章对你有用,请随意赞赏