本文将详细介绍如何在 Centos 7 搭建 hexo 博客
1. 安装 Git
yum install -y git
配置用户名和邮箱
git config --global user.name "你的账号"
git config --global user.email "你的邮箱"
查看配置及版本
git config -l
git version
生成 ssh 密钥
ssh-keygen -t rsa -C "你的 github 邮箱"
打开 /root/.ssh/id_rsa.pub
,将其中内容添加到 GitHub 的 SSH Key
尝试使用 ssh clone 你的仓库
git clone [email protected]:githubid/repo.git
如果 clone 成功则说明 ssh 设置成功
2. 安装 Nodejs
这里使用压缩包的方式进行安装
首先 cd 到 /tmp
目录下(tmp 目录用来存放临时文件,服务器重启后会自动清除)
cd /tmp
下载 nodejs 最新版本
wget https://nodejs.org/dist/v12.16.0/node-v12.16.0-linux-x64.tar.xz
解压
tar xvJf node-v12.16.0-linux-x64.tar.xz
将 /tmp/node-v12.16.0-linux-x64
文件夹移动到 /usr/local
目录下,并重命名为 node
mv node-v12.16.0-linux-x64 /usr/local/node
添加软连接到 /bin 目录
ln -s /usr/local/node/bin/node /bin/node
ln -s /usr/local/node/bin/npm /bin/npm
配置环境变量
echo 'export PATH=/usr/local/node/bin:$PATH' >> /etc/profile
source /etc/profile
查看 nodejs 和 npm 版本
node -v
npm -v
如果正常显示,则安装成功
3. 安装 Hexo
设置 npm 源为淘宝源
npm config set registry https://registry.npm.taobao.org
安装 hexo
npm install -g hexo-cli
查看版本
hexo -v
4. 创建 Hexo 博客
这里将博客放在 /data/blog
目录下
创建文件夹
mkdir -p /data/blog
初始化 hexo
cd /data/blog
hexo init
生成 hexo 页面
hexo g
此时会在目录下生成一个 public
文件,其中的 index.html
就是博客的主页面
5. 安装 Nginx
这里使用压缩包的方式进行安装
首先需要安装依赖
yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
同样在 /tmp
目录下,下载 nginx 最新版本,并解压
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
编译
cd nginx-1.16.1
./configure --with-http_ssl_module
--with-http_ssl_module
: 配置 ssl 模块
编译完后,会显示配置信息,默认将 nginx 安装到 /usr/local/nginx
安装
make && make install
nginx 的配置文件在 /usr/local/nginx/conf
目录下,编辑 nginx.conf
,按 i
进入 INSERT
模式
vi /usr/local/nginx/conf/nginx.conf
# 保存并退出
:wq
# 退出但不保存
:q!
需在配置文件中修改监听的 server_name
为你的域名,以及 ssl 证书的目录和博客的目录
server {
listen 443 ssl;
# 修改域名或ip
server_name blog.tsund.cn;
# 修改ssl证书目录
ssl_certificate /data/ssl/blog_tsund_cn/chain.crt;
ssl_certificate_key /data/ssl/blog_tsund_cn/key.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_prefer_server_ciphers on;
# 修改博客目录
location / {
root /data/blog/public;
index index.html index.htm;
}
}
重启 nginx
cd /usr/local/nginx/sbin
./nginx -s reload
# 启动 nginx
./nginx
# 关闭 nginx
./nginx -s stop
访问博客地址,出现 hexo 界面
接下来,就可以将 GitHub 的博客迁移到服务器了