基于Linux搭建Hexo
基于Linux搭建Hexo
作者:IT王小二
记录一下基于 Linux 搭建 Hexo 过程。
还记得 2019 年 5 月买了腾讯云 1c2g1m 的学生机和域名,域名备案好之后,2019 年 7 月搭了 Hexo 来写文章,记录一下自己的生活和笔记。
现在已经是 2021 年 5 月了,不知不觉快两年过去了...,回头一看自己文章也没写多少,服务器倒是没少折腾,现在也该收拾一下静下心来写文章了。
近期正好换了服务器,需要更新的文章正好更新下,之前仅仅在掘金发文章,发现掘金的话还是前端的文章偏多,而我主力还是 java 后端嘛。
为了和大佬们有更好的互动,所以接下来会同步往掘金、博客园发文,希望大佬们多多交流指正啊,毕竟个人的理解可能会有偏差,希望和大佬们。
话不多说,正文开始。
一、环境准备
Hexo 需要 node 及 git 环境,如果已经安装可跳过此步骤。
版本说明:
- Linux版本:CentOS 7 64位
- node版本:12.20.2
- Hexo版本:5.4.0
1. 安装node
安装过程参考 https://www.runoob.com/nodejs/nodejs-install-setup.html
下载安装文件。
方式一:下载到本地后上传到服务器服务器安装,下载地址:https://nodejs.org/zh-cn/download/,下载相应版本上传即可。
方式二:wget下载到服务器本地目录,进入目录,目录可自己选择喜欢的目录,我选择的是
/usr/local/src/
路径。
# 选择目录下载node文件
cd /usr/local/src/
wget https://nodejs.org/dist/v12.20.2/node-v12.20.2-linux-x64.tar.xz
解压缩重命名。
xz -d node-v12.20.2-linux-x64.tar.xz
tar -xf node-v12.20.2-linux-x64.tar
mv node-v12.20.2-linux-x64 /usr/local/node-v12.20.2
解压文件的 bin 目录底下包含了 node、npm 等命令,为了使用这些命令需要配置环境变量。
vim /etc/profile
# 添加内容
export NODE_HOME=/usr/local/node-v12.20.2
export PATH=$NODE_HOME/bin:$PATH
# 刷新配置
source /etc/profile
验证是否安装配置成功,显示版本信息则安装成功。
$node -v
v12.20.2
$npm -v
6.14.11
npm 设置淘宝源(可选操作),加快 npm 下载依赖速度,配置后可以通过 cnpm 命令替换 npm 命令下载,例如 npm install
可以替换成 cnpm install
# 设置淘宝镜像源
npm config set registry https://registry.npm.taobao.org
# 配置后可通过下面方式来验证是否成功,返回https://registry.npm.taobao.org则配置成功
npm config get registry
# 安装cnpm,可以使用cnpm命令安装
npm install -g cnpm --registry=https://registry.npm.taobao.org
2. 安装git
yum install git-core
二、安装Hexo
如果你安装的是最新版,安装过程及文档查看 Hexo官网,安装过程有问题可以在 https://github.com/hexojs/hexo/issues 查找答案,大部分你碰到的问题别人都可能提了 issues,已经有解决方案了。
安装 hexo-cli
脚手架,用于初始化站点目录。
cnpm install -g hexo-cli
我把站点目录放在 /itwxe 下,可以自行选择。初始化站点,blogSite 为 hexo 初始化站点目录名称。
cd /itwxe
hexo init blogSite
进入站点目录安装依赖。
cd blogSite/
cnpm install
hexo 编译 markdown 生成 html,在 /itwxe/blogSite 路径下生成静态文件目录 public,如果使用 nginx 等 web 代理服务器,生成静态文件,映射 public 下的 index.html 即可访问了。
hexo g
当然,如果你只是想看下效果可以直接使用端口访问
hexo s
云服务器需要控制台开通4000端口,访问 http://你的ip:4000
查看效果。
当然 Hexo 默认主题并不那么好看,可以自己去 Hexo官网 选择查看,我折腾过的主题也有 yelee、indigo、butterfly、volantis,最后停留在了 volantis,估计以后也不会再折腾主题了。
没有内容的主题,再漂亮也显得空白,努力进行技术沉淀才是王道!