如何搭建基于 Hexo 的独立博客

如果你的电脑是 macOS 系统,又比较懒,你可以选择使用下面这行脚本命令全程自动化完成,下面文章就可以不用看了。

打开终端,cd 到你想创建博客的地方,执行这一行命令:

1
curl -O 'https://raw.githubusercontent.com/xaoxuu/hexo.sh/master/hexo.sh' -# && chmod 777 hexo.sh && . hexo.sh -i init

当然,如果你想知其所以然,最好还是看一下本文。

配置环境

安装Node.js

Hexo依赖Node.js和git。如果电脑上没有node环境可以去 Nodejs官网 下载,或者在这里直接下载 node-v6.11.0.pkg 。安装完成可以查看版本,在终端输入:

1
npm -v

当看到如下信息时,说明已经安装成功。

安装git

macOS自带git,可以跳过此步骤。

  • Windows: Download & install git.
  • Mac: Install it with Homebrew, MacPorts or installer.
  • Linux (Ubuntu, Debian): sudo apt-get install git-core
  • Linux (Fedora, Red Hat, CentOS): sudo yum install git-core

安装Command Line Tools

macOS需要安装Command Line Tools,Windows可以跳过这一步骤。在终端输入:

1
xcode-select --install

然后会弹出一个提示框:

点击Install安装。

安装hexo

在终端输入:

1
npm install hexo-cli -g

如图:

如果安装失败,显示这样的信息如图:

则需要以管理员身份运行,在终端输入:

1
sudo npm install hexo-cli -g

看到这个结果就表明安装成功了:

开始创作

1
2
3
4
hexo init blog
cd blog
npm install
hexo server

选择一个主题

执行完上面几条命令之后,在浏览器打开地址:http://localhost:4000/就会看到hexo为你提供的默认主题。如果你不喜欢hexo自带的主题,可以去 hexo官网 找个喜欢的主题。下载主题源码到.../你的博客/themes/里面,根据主题的README文档提示,可能需要安装一些依赖包,或者对主题的_config.myl文件进行修改。

如果你想使用本站的博客主题的话,只需要打开终端,cd到你博客所在的目录,执行以下这条命令:

1
hexo.sh i x

如果提示 command not found ,说明你的电脑上还没有使用过 hexo.sh 脚本,那么可以执行下面这一段命令下载脚本然后应用主题:

1
curl -O 'https://raw.githubusercontent.com/xaoxuu/hexo.sh/master/hexo.sh' -# && chmod 777 hexo.sh && . hexo.sh -i i x

写下第一篇博文

你可以按照 官方文档 的方法去创建一个具有初始化内容的md文件到.../你的博客/source/_posts/位置,当然也可以通过其他任意方式创建md文件,只要文件开头有如下格式的内容即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
---
layout: post
date: 2017-07-05
title: 如何搭建基于Hexo的独立博客
categories: Cocoa Dev
tags:
- blog
- Hexo
---

这是预览

<!--more-->

这是正文

发布博客

博客发布到服务器才能被外网访问,如果你有服务器更好,可以支持一些有趣的功能,例如 hexo-admin 可以为你的博客增加后台管理功能,在其他地方只要登录管理员账号就可以在线写博文了。但是如果没有自己的服务器的,也可以将博客托管到 GitHubCoding 等网站。他们的优缺点如下:

GitHub
优点:功能最强大,最知名,偏技术性的博客力荐。
缺点:国内访问稍慢(以前是很慢,现在已经好多了,但是仍不及国内的服务快);GitHub服务器屏蔽了百度爬虫,要想被百度收录,需要去百度站长平台手动提交。

Coding
优点:国内访问速度很快,一键申请并配置好SSL证书,很容易被百度收录。
缺点:只能通过CNAME方式设置域名,也就意味着你不能同时使用域名邮箱等其他域名服务。

常用的命令有:

1
2
3
hexo clean
hexo g
hexo d

暂时先更到这里,有什么疑问随时可以问我,或者在下方DISQUS留言。