乐趣区

关于前端:强大博客搭建全过程1hexo博客搭建保姆级教程

1、前言

自己原本应用国内的开源我的项目 solo 搭建了博客,但感觉 1 核 CPU2G 内存的服务器,还是略微有点重,包含服务器内还搭建了数据库。如果本人开发而后搭建,消耗工夫又比拟多,于是乎开始寻找轻量型的博客零碎。

此时 hexo 蓦然跟我招招手,“嘿,兄弟,是要搭建博客吗?”

“嗯嗯,是的,但我配置很低,1C2G,跑不起来太花里胡哨的博客零碎。”我讪讪答道。

“我 hexo 是纯动态博客框架,一个疾速、简洁且高效的博客框架。应用 Markdown(或其余渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成动态网页。不应用任何数据库。”hexo 骄傲道。

我立马眼睛一亮,随后道:“真哒,那真是太好了。但我有好多博客平台要公布博客,比方 csdn、掘金、博客园、微信公众号 ……”

此时,一位力大无穷的搬运工走了过去,身上扛着几箱博客纸箱,拍了拍我的肩膀,而后瓮声瓮气道:“我叫 ArtiPub,你要给多平台公布文章?刚好我要搬运这些博客,你这事包在我上身。”

“哈,ArtiPub 壮士,hexo 大侠,感激了。但你们要怎么免费,你看我略微有点囊中羞涩。”此时此刻我冲动万分,但摸了摸口袋,只剩下今晚饭钱一块二毛五,一想到两位大侠神通广大,免费必定不便宜,脸色开始黯淡起来。

“不要钱,收费办事,我为人人,人人为我。”hexo 和 ArtiPub 异口同声道。

只那一瞬间,我手上一箱博客纸箱,被两位大侠拽了过来,随即他们挥一挥衣袖,绝尘而去,远处传来他们豪气地笑声。稍纵片刻,不到半盏茶工夫,我的博客就被搭建了起来,而后 csdn、掘金、博客园、微信公众号 …… 都呈现了各篇文章,我眼中泛着冲动的泪光,心田默默感激着 hexo 和 ArtiPub 两位大侠,心愿有朝一日本人也能像他们个别行侠仗义,造福百姓。

就在这时候,我筹备回家,却见地上有两本文治秘籍,一本《hexo 博客搭建保姆级教程》,一本《ArtiPub 一键公布各平台》,这时我晓得是两位大侠留给我的,于是便有了这篇文章,就让我带着大家领略这两篇文治秘籍的精华所在吧。

2、hexo 搭建博客

hexo 官网中文文档:文档 | Hexo

本文思路是先在 windows 里装置好对应环境,放好文章后,而后生成动态文件,疾速放到服务器上。

1、hexo 介绍

Hexo 是一个疾速、简洁且高效的博客框架。Hexo 应用 Markdown(或其余渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成动态网页。

2、hexo 服务端操作

hexo 服务端次要是搭建好根本运行的环境 nginx 和 git,通过 git 搭建 git-hook 让客户端和服务端联动起来,能做到上传文档到 git 即可触发网站更新。

1、服务端配置

操作系统 须要安裝組件 配置(cpu 和内存)
centos7.8 nginx、git 1C2G

2、装置 git 和 nginx

yum install -y nginx git

3、增加一个为 git 的用户

useradd git
passwd git

# 给 git 用户配置 sudo 权限
chmod 740 /etc/sudoers
vim /etc/sudoers
# 找到 root ALL=(ALL) ALL,在它下方退出一行
git ALL=(ALL) ALL

chmod 400 /etc/sudoers

4、配置 git 参数

# 其中 username 和 username@XXX.com 是你注册 Gitee 的用户名和邮箱,如果账号不是邮箱注册的话,填本人的一个邮箱地址就行了
git config --global user.name "username"
git config --global user.email "username@XXX.com"

4、创立 ssh 密钥

su - git
mkdir -p ~/.ssh
cd ~/. ssh
 # 其中 username@XXX.com 同上,是你的注册邮箱
 ssh-keygen -t rsa -C "username@XXX.com"

而后间断 3 次回车,最终会生成一个文件在用户目录下,关上用户目录,找到 .ssh\id_rsa.pub 文件,记事本关上并复制外面的内容,关上你的 gitee 主页,进入集体设置 -> 增加公钥 -> 增加部署公钥,将公钥拷贝进去

测试 ssh 状况

# 应用 SSH 连贯 Gitee:
ssh -T git@gitee.com

4、给 git 用户增加 ssh 密钥

su git
touch ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorzied_keys
chmod 700 ~/.ssh
vim ~/.ssh/authorized_keys    #将 ssh 密钥粘贴进去

5、创立 git 仓库并应用 git-hooks 实现主动部署

sudo mkdir -p /data/git/repo    #新建目录,这是 git 仓库的地位
sudo mkdir -p /data/hexo #我的项目部署地址
cd /data/git/repo  #转到 git 仓库的文件夹
sudo git init --bare hexoblog.git #创立一个名叫 blog 的仓库
sudo vim /data/git/repo/hexoblog/.git/hooks/post-update

post-update的内如如下:

#!/bin/bash
git --work-tree=/data/hexo --git-dir=/data/git/repo/hexoblog.git checkout -f

给 post-update 受权

cd /data/git/repo/hexoblog/.git/hooks/
sudo chown -R git:git /data/git/repo/
sudo chown -R git:git /data/hexo
sudo chmod +x post-update  #赋予其可执行权限

6、配置 Nginx

cd /usr/local/nginx/conf/
vim nginx.conf

nginx.conf` 退出内容如下:

server {
    listen    80 default_server;
    listen    [::] default_server;
    server_name    www.beierblog.com;
    root    /data/hexo
}

查看 Nginx 语法并重载 nginx:

7、批改 git 用户的默认 shell 环境

vim /etc/passwd
#批改最初一行
#将 /bin/bash 批改为 /usr/bin/git-shell

8、解析域名

到你购买域名的供应商控制台,将域名解析到你的服务器即可。

3、hexo 客户端操作

hexo 本地端次要在自己的 window 零碎的电脑里操作,次要做了初始化 hexo、上传博客、批改主题的操作,配合 git-hook 能做到提交 git 就能在网站查看到实时变动。

1、客户端配置

操作系统 须要安裝組件 配置(cpu 和内存)
window10 git、node、npm 4C16G

2、搭建命令

首先装置 node 环境和 git 命令

  • Node.js (node 自带 npm 命令,Node.js 版本需不低于 10.13,倡议应用 Node.js 12.0 及以上版本)
  • Git

### Node.js 版本限度

咱们强烈建议永远装置最新版本的 Hexo,以及 举荐的 Node.js 版本。

| Hexo 版本 | 最低兼容 Node.js 版本 |
| :———- | :——————– |
| 6.0+ | 12.13.0 |
| 5.0+ | 10.13.0 |
| 4.1 – 4.2 | 8.10 |
| 4.0 | 8.6 |
| 3.3 – 3.9 | 6.9 |
| 3.2 – 3.3 | 0.12 |
| 3.0 – 3.1 | 0.10 or iojs |
| 0.0.1 – 2.8 | 0.10 |

这里不对 node 环境和 git 装置做过多教程,具体可看教程:

这里要留神npm 须要配置国内镜像,命令如下:

# 查看 npm 源
npm config get registry
# 长期批改 npm 源装置 hexo (仅本条命令无效)
npm --registry=https://registry.npm.taobao.org install -g hexo-cli
# 或者永恒批改 npm 源
npm config set registry https://registry.npm.taobao.org

3、初始化 hexo

1、npm 全局装置 hexo
npm install -g hexo-cli
2、hexo 初始化(hexoblog 为自定义目录,可自行批改)
hexo init hexoblog
cd hexoblog
npm install

新建实现后,指定文件夹的目录如下:

.
├── _config.yml
├── package.json
├── scaffolds
├── source
|   ├── _drafts
|   └── _posts
└── themes

目录_config.yml 是配置文件,具体如何批改详见官网文档:配置 | Hexo

hexo 全局装置后,应用 hexo 相干命令,全副命令参考:指令 | Hexo

4、启动 hexo
 hexo server

启动后,拜访地址:http://localhost:4000,成果如图:

5、上传博客
形式一:文件间接放入并动态化

a. 把编辑好的 markdownw 文件放在我的项目目录:${我的项目目录}/source/_posts。

b. 执行动态化和服务启动命令:

hexo generate & hexo server
形式二:通过命令上传文章
# 切换到我的项目目录
cd ${我的项目目录}

#初始化文章
hexo new "博客 1"

#进入博客根目录
cd ${我的项目目录}/source/_posts

#针对 博客 1.md 自行编写
6、部署配置批改(配合 git)

部署文档:部署 | Hexo

a. 先装置 Hexo 公布插件

npm install hexo-deployer-git

b. 批改部署配置

cd ${我的项目目录}
vim _config.yml

# 找到 deploy 配置局部
# Deployment
## 部署文档: https://hexo.io/zh-cn/docs/one-command-deployment
deploy:
  type: git
  repo: root@IP:/data/git/repo/hexoblog.git # IP 填写本人服务器的 IP 即可
  branch: master

留神:服务器所在 ssh 端口如果不是默认的 22 端口,就会失败,但 hexo 没有配置能批改 ssh 默认端口,所以 git 的 deploy 形式走不必的话,倡议抉择其余形式

7、部署到服务器
# 革除缓存
hexo clean

# 生成动态页面
hexo generate

# 将本地动态页面目录部署到云服务器
hexo d

自此,功败垂成,能够查看本人博客状况。

4、切换主题教程(客户端操作)

自己采纳主题为 fluid,参考文档:fluid-dev/hexo-theme-fluid)

切换步骤:

#npm 下载主题依赖
npm install --save hexo-theme-fluid

#__config.yml 里批改配置
theme: fluid  # 指定主题
language: zh-CN  # 指定语言,会影响主题显示的语言,按需批改

创立「对于页」

首次应用主题的「对于页」须要手动创立:

hexo new page about

创立胜利后,编辑博客目录下 /source/about/index.md,增加 layout 属性。

批改后的文件示例如下:

---
title: about
layout: about
---

这里写对于页的注释,反对 Markdown, HTML

5、Hexo 难看的主题举荐

查看我的另外一篇文章:hexo 博客主题举荐

参考文档

Hexo 官网建站教程

博主集体博客网站:奇想派

本文原创作者:奇想派、一名致力分享的程序员。

文章首发平台:微信公众号【编程达人】

原创不易!各位小伙伴感觉文章不错的话,无妨关注公众号,进行 点赞(在看)、转发 三连走起!谢谢大家!

退出移动版