本文主要内容是初步搭建Hexo博客的主要过程。其中,本地操作系统是manjaro,云服务器是阿里云的centos。虽然网上有很多搭建Hexo博客的很多博文,但是有很多是基于github搭建的,很少有自建服务器的,当时搭建这个博客的时候参考了很多文章,所以自己现在提供一个完全可行的教程。

准备工作

首先要注册域名以及购买云服务器,这些流程都很简单,这里就不说了。

开启80端口

新购买的阿里云系统是默认没有开启80端口的,而这是HTTP协议的端口号,如果不开启,直接使用域名是无法访问你的网站的。所以需要首先开启这个端口。

进入阿里云管理控制台,选择管理实例

点击本实例安全组,选择配置规则

点击右上角的添加安全组规则 。其中端口范围:80/80,授权对象:0.0.0.0/0

如下图为添加完80端口后的示意图:

配置服务器

安装Ngnix

安装执行命令如下:

1
yum install -y ngnix

启动服务器:

1
2
systemctl start ngnix
systemctl enable ngnix

配置服务器路由

安装并启动服务器后,那么就可以使用公网IP访问我们的服务器了。此时指向的是一个默认地址,但是我们需要的是将IP指向我们的博客地址,那么就需要配置nginx的配置文件了。编辑配置文件/etc/nginx/nginx.conf:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.candysky.top; //这里写服务器的域名
root /home/blog/websites; //这里是博客目录的存放位置

# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;

location / {
}

error_page 404 /404.html;
location = /40x.html {
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}

保存后退出。

安装Node.js

1
2
curl -sL https://rpm.nodesource.com/setup_10.x | bash -
yum install -y nodejs

执行命令检查一下是否安装成功:

1
2
[root@izuf6eja/]# node -v
v13.0.1

客户端操作

安装Node.js & npm

使用命令行安装:

1
2
pacman -S nodejs
panman -S npm

查看版本号判断是否安装成功:

1
2
3
4
[candy-pc root]# node -v
v12.13.0
[candy-pc root]# npm -v
6.12.1

安装Hexo

arch系linux安装 hexo很方便

1
pacman -S hexo

由于使用npm直接下载会有很多人遇到卡顿的问题(国外服务器),所以我们要做的第一步工作是将npm换成淘宝的服务器。 cmd输入下面的命令:

1
2
3
npm config set registry https://registry.npm.taobao.org
# 然后安装cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org

然后我们选一个目录用来初始化博客程序:

1
2
cd Blog
hexo init

执行成功后安装两个插件

1
2
npm install hexo-deployer-git --save
npm install hexo-server

之后我们就可以在自己的本机上查看自己的博客了

1
2
hexo g
hexo s

打开浏览器访问 http://localhost:4000

配置_config.yml完成服务器的部署

在刚才生成hexo的目录下,找到_config.yml,打开它。 找到deploy 做如下配置

1
2
3
4
5
deploy:
type: git
repo: git@这里改为服务器公网IP:/home/git/blog.git
branch: master
message:

保存退出 然后尝试写一篇文章并且发布到服务器上

1
2
hexo new "Hello My First Blog"
hexo clean && hexo generate --deploy

服务器上重新运行nginx服务器 nginx -s relo

开启ssh服务

对于manjaro系统而言,我们使用系统自带的ssh可以直接访问服务器。

如果没有开启ssh服务,首先需要开启:

1
systemctl start sshd.service

让ssh服务开机自启:

1
systemctl enable sshd.service

另外,系统自带git系统了,可以查看一下Git版本:

1
pacman -Q git

配置_config.yml完成服务器的部署

在刚才生成hexo的目录下,找到_config.yml,打开它。 找到deploy 做如下配置

1
2
3
4
5
deploy:
type: git
repo: git@这里改为服务器公网IP:/home/git/blog.git
branch: master
message:

保存退出 然后尝试写一篇文章并且发布到服务器上

1
2
hexo new "Hello My First Blog"
hexo clean && hexo generate --deploy

在服务器上重新运行nginx服务器 nginx -s reload

完成部署

完成部署后可以去Hexo主题下载自己喜欢的主题,美化博客了。

联系我

评论