Hexo搭建个人博客(一)

前言

最近几个月自学python的过程中,搜索资料的时候收藏了很多大神的的博客,为我开启了一片新世界,之后在经历了各种挖坑爬坑苦逼造轮子的毁灭经历后。搭建一个自己博客的萌芽也悄然种下,不仅仅是记录自己的技术路线,也是想和各方朋友一起探讨交流。

经过几天不懈的没日没夜的努力,解决了各种问题,终于把自己(彻)的(底)博(逼)客(疯)搭(了)建成功。接下来我就把我走过N多弯路后的经验传授给大家,让大家少走弯路轻松愉快地搭建自己的Hexo博客。


基础

  1. 玩过github,至少上传过一个自己的项目/工程。
  2. 有一定的node.js基础,至少安装过node环境,熟悉npm命令。

如果没有基础的请看git入门node入门两篇文章。

准备

安装所需软件

1.Node.js

2.Git

什么是Hexo?

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

基本配置

因为npm默认访问国外的仓库,国内用户很可能被墙,要想正常安装hexo,要么配置代理,要么用cnpm(淘宝镜像)替换npm。

  • 配置代理

    1
    npm config set proxy http://127.0.0.1:1080
  • 安装cnpm(推荐

    1
    npm install -g cnpm --registry=https://registry.npm.taobao.org

cnpm可以在墙内完美无缝替代npm的所有功能,安装之后只需将之后所有命令行中的npm替换成cnpm即可。

安装Hexo

打开cmd(命令提示符),输入以下代码:

1
$ npm install -g hexo

-g是全局安装,安装成功后可以使用hexo指令。

初始化

1、进入你想放博客的目录,创建文件夹–>Hexo

2、在Hexo文件下,右键运行Git Bash,输入命令:

1
hexo init

生成博客:

img

安装依赖包:

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

生成静态网页:

1
hexo g

启动本地服务

1
hexo s

这时在浏览器中输入localhost:4000/就可以看到本地的博客了。

按住Ctrl+C键即可停止运行。

安装Next主题

NexT 是一个高质量并且优雅的Hexo主题。这是精心制作做出来的 hexo 主题。

在Hexo文件夹下 Git Bash,输入命令:

1
git clone https://github.com/iissnan/hexo-theme-next themes/next

可以在这里浏览更多主题

启用主题

与所有 Hexo 主题启用的模式一样。 当 克隆/下载 完成后,打开 站点配置文件, 找到 theme 字段,并将其值更改为 next

启用 NexT 主题

1
theme: next

到此,NexT 主题安装完成。下一步我们将验证主题是否正确启用。在切换主题之后、验证之前, 我们最好使用 hexo clean 来清除 Hexo 的缓存。

验证主题

首先启动 Hexo 本地站点,并开启调试模式(即加上 --debug),整个命令是 hexo s --debug。 在服务启动的过程,注意观察命令行输出是否有任何异常信息,如果你碰到问题,这些信息将帮助他人更好的定位错误。 当命令行输出中提示出:

1
INFO  Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.

此时即可使用浏览器访问 http://localhost:4000,检查站点是否正确运行。

img

当你看到站点的外观与上图所示类似时即说明你已成功安装 NexT 主题。这是 NexT 默认的 Scheme —— Muse

Hexo部署github

注册账号

进入github官网,按照提示注册账号。

创建repository

按照下图所示点击New repository
img
按图中所示操作,其中第一步中填入username.github.io(username是你的账号名,username不区分大小写)。如我的username为hahajoker,我应该填入hahajoker.github.io。
img

设置SSH keys

我们需要通过SSH keys将git与github联系起来。步骤如下:
1.打开git bash,输入cd ~/.ssh,如果果提示:No such file or directory 说明未设置SSH。
2.接着输入

1
2
3
ssh-keygen -t rsa -C "邮件地址@youremail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):<回车就好>

此处应注意-C为大写C,邮箱地址为你创建github账号的邮箱地址。

1
2
Enter passphrase (empty for no passphrase):<输入加密串>
Enter same passphrase again:<再次输入加密串>

输入密码,此密码为提交项目时所用。(ps:输入时可能无显示,直接输入即可。)
3.用记事本打开C:\Documents and Settings\Administrator.ssh\id_rsa.pub文件,全选并复制公钥。
4.登录Github,点击右上角头像——>settings——>——>SSH keys——>New SSH key,把公钥粘贴到key中,填好title并点击Add SSH key
5.输入以下命令测试是否成功

1
$ ssh -T git@github.com

出现如下反馈,输入yes出现Hi xxxx! You’ve successfully authenticated, but GitHub does not provide shell access.说明成功连接github。

1
2
3
The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?

编辑站点配置

在你的hexo根目录下有一个_config_yml文件,就是站点的配置文件,打开后,在最后加上:

1
2
3
4
5
deploy:
type: git
repository: https://github.com/hahajoker/hahajoker.github.io.git
branch: master
plugins: -hexo-generator-feed

注意编写规范!所有冒号:后面都要加空格再输入。

hahajoker换成yourname即可。

部署博客

在hexo根目录下,用指令:

1
2
$ hexo g #生成静态网页
$ hexo d #开始部署

过程中会提示输入你的github username和密码(密码为,等待命令运行完成即可。部署完成后,在浏览器中访问http://your_name.github.io/能够看到你的Hexo博客,到此部署成功!
有些版本的Hexo没有内置hexo-deployer-git,会出现下列情况:

1
Deployer not found: git

这时候输入以下代码安装即可:

1
npm install hexo-deployer-git --save

注:

1
2
3
hexo g == hexo generate
hexo s == hexo server
hexo d == hexo deploy

到这里各项准备工作已经做好,接下来就要进入Hexo的搭建。

参考资料

用钱砸我,不要停!