使用Hexo搭建个人博客(基于hexo3.0)
转自http://opiece.me/2015/04/09/hexo-guide/
前言
由于本人最近已经将博客主题转为NexT,因此本教程的内容已经不能参考本博客现在的主题。但是,本教程仍然适用于初学者学习,为了方便初学者参考,特将Concise主题(写教程时的主题)的大致框架截图如下。
——2016.03.13
动机
前些天,自己刚刚接触hexo,并用hexo搭建了自己的博客,对hexo的强大搭建博客能力感到赞叹。用我的实际体验来说,你只要是有点计算机基础的人,完全可以轻松的使用hexo搭建起自己的博客。你要是用过github、oschina、gitcafe其中的一样,那对你来说,就可以分分钟上手了。其实网上使用hexo搭建博客的教程多的是,我自己也是跟着zippera的教程搭建的博客,那么我还写这篇博客是出于什么目的呢?原因如下:第一,网上的教程大多比较老了,我在搭建的过程中就遇到过不少问题,因此我觉得有必要写个适配hexo3.0的教程。第二,如你所见,本博客由于刚刚起步,博文少的可怜,因此写这篇博文也可以充场子,免得太冷清。第三,算是自己的个人笔记吧,我本人对于刚学的东西都喜欢用博文记录,免得以后自己忘掉。
正文
首先声明,本教程所针对的是windows用户。
安装Git
下载并安装git,如果你想了解点Git的基础命令,我推荐以下博文:Git常用的基础命令,史上最全github使用方法:github入门到精通,当然即使你不懂Git的命令,跟着本博文走,也完全没问题。
安装Node.js
下载并安装Node.js,此处建议不要下载最新的v6开头的版本,否则每次执行hexo命令都会有提示,建议使用v5开头的版本,Node.js主要用于安装hexo,npm开头的命令都依赖于Node.js,此处我建议安装完毕后重启电脑,因为我当初安装完没重启,结果后面使用命令安装hexo的时候,提示无效的命令,因此推荐重启。当然,你也可以选择等到后面遇到问题,再选择重启。如果出现以下提示则代表你的Node.js没有安装或者还未生效,如果已经安装了则重启电脑,如果没安装则安装再重启电脑。
1
|
bash: nmp: command not found
|
安装hexo
安装前先介绍几个hexo常用的命令,#后面为注释。
1
|
$ hexo g #完整命令为hexo generate,用于生成静态文件
|
鼠标右键任意地方,选择Git Bash,使用以下命令安装hexo(ps:以下命令中的$符号只为了让教程和实际看起来一致,实际输入命令只需输入$ 后面的命令即可)
1
|
$ npm install hexo-cli -g
|
如果之后在使用的过程中,遇到以下的错误
1
|
ERROR Deployer not found : github
|
则运行以下命令,或者你直接先运行这个命令更好。
1
|
$ npm install hexo-deployer-git --save
|
接下来创建放置博客文件的文件夹:hexo文件夹。在自己想要的位置创建文件夹,如我hexo文件夹的位置为E:\hexo
,名字和地方可以自由选择,当然最好不要放在中文路径下,至于原因,我想很多人懂得。之后进入文件夹,即E:\hexo内
,点击鼠标右键,选择Git Bash,执行以下命令,Hexo会自动在该文件夹下下载搭建网站所需的所有文件。
1
|
$ hexo init
|
安装依赖包
1
|
$ npm install
|
让我们看看刚刚下载的hexo文件带来了什么,在E:\hexo
内执行以下命令,
1
|
$ hexo g
|
然后用浏览器访问http://localhost:4000/
,此时,你应该看到了一个漂亮的博客了,当然这个博客只是在本地的,别人是看不到的,hexo3.0使用的默认主题是landscape。轻轻松松就看到了一点成果,是不是很激动,这就是hexo的强大之处,这个本地预览的功能,我真是爱不释手。
注册Github帐号
已经有Github帐号跳过此步,首先进入Github进行注册,用户名、邮箱和密码之后都需要用到,自己记好。
创建repository
repository相当于一个仓库,用来放置你的代码文件。首先,登陆进入Github,并进入个人页面,选择Repositories
(下图第一个红圈的地方),然后New
一个repository(下图第二个红圈的地方)
创建时,只需要填写Repository name即可,当然这个名字的格式必须为youname.github.io
,例如我的为huangjunhui.github.io,注意:此处的youname
必须为你的github用户名,用户名是可以用来登陆的。
部署本地文件到github
既然Repository已经创建了,当然是先把博客放到Github
上去看看效果。编辑E:\hexo
下的_config.yml
文件,建议使用Notepad++。
在_config.yml
最下方,添加如下配置(命令中的第一个huangjunhui为Github的用户名,第二个huangjunhui为之前New的Repository的名字,记得改成自己的。另外记得一点,hexo的配置文件中任何’:’后面都是带一个空格的),如果配置以下命令出现ERROR Deployer not found : github
,则参考上文的解决方法。
1
|
deploy:
|
配置好_config.yml
并保存后,执行以下命令部署到Github上。如果你是第一次使用Github或者是已经使用过,但没有配置过SSH,则可能需要配置一下,本文的另一种发布到github的配置一节有介绍。
1
|
$ hexo g
|
执行上面的第二个命令,可能会要你输入用户名和密码,皆为注册Github时的数据,输入密码是不显示任何东西的,输入完毕回车即可。
此时,我们的博客已经搭建起来,并发布到Github上了,这时可以登陆自己的Github查看代码是否已经推送到对应Repository,在浏览器访问huangjunhui.github.io
就能看到自己的博客了。第一次访问地址,可能访问不了,您可以在几分钟后进行访问,一般不超过10分钟。
hexo的配置文件
hexo里面有两个常用到的配置文件,分别是整个博客的配置文件E:\hexo\_config.yml
和主题的配置文件E:\hexo\themes\light\_config.yml
,此地址是对于我来说,hexo3.0使用的默认主题是landscape,因此你们的地址应该是E:\hexo\themes\landscape\_config.yml
,下文所有讲到light的地方,你们将之换为自己的主题名即可。本博客使用的主题是基于light改善的主题,目前还在完善中,如果完成的比较好,以后可能发布在github
上。如果你想自己挑选喜欢的主题,hexo官方提供了12个主题供你自己选择,使用方法很简单,点击自己想要的主题,进入该主题的Repository,使用Git将主题clone到本地,然后将整个文件夹复制到E:\hexo\themes
文件夹下,将E"\hexo\_config.yml
里的theme名字改为自己下载的主题的文件夹名即可。
接下来介绍整个博客的配置文件。E:\hexo\_config.yml
1
|
# Hexo Configuration
|
按照自己的意愿修改完后,执行hexo g
,hexo s
,打开localhost:4000
看看效果。E:\hexo\themes\light\_config.yml
,此处针对Concise
主题,如果使用其他主题,请查看自己主题的帮助文档,NexT主题帮助文档
1
|
menu: #博客右上角的菜单栏,暂时使用默认值
|
以上的改动不多,大多是介绍下功能。
发表一篇文章
1.在Git Bash执行命令:$ hexo new "my new post"
2.在E:\hexo\source\_post
中打开my-new-post.md,打开方式使用记事本或notepad++。
hexo中写文章使用的是Markdown,没接触过的可以看下Markdown语法说明,一分钟学会Markdown
1
|
title: my new post #可以改成中文的,如“新文章”
|
写完文章后,你可以使用1.$ hexo g
生成静态文件。2.$ hexo s
在本地预览效果。3.hexo d
同步到github,然后使用http://huangjunhui.github.io进行访问。
另一种发布到github的配置
有不少人反馈说无法发布到github,现在提供另一种配置方式,这种方式在发布时不需要输入密码,也是我目前使用的方法,配置代码如下。
1
|
deploy:
|
这种配置方式,需要配置SSH key,教程如下:
鼠标右键任意地方,选择Git Bash,
1
|
$ ssh-keygen -t rsa -C "your_email@youremail.com"
|
后面的your_email@youremail.com改为你的Github邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行,成功的话会在C:\Users\Administrator
下生成.ssh文件夹,进入该文件夹,以文本的形式打开id_rsa.pub,复制里面的key,即复制文件的全部内容。如果你在这边只看见2个id_rsa文件,没看到id_rsa.pub,应该是你把后缀名隐藏了,可以设置显示后缀,或者直接把两个文件都以文本的形式打开,内容短的并且以ssh-rsa
开头的即为所需的SSH key。
回到github,进入Settings,选择SSH and GPG Keys -> New SSH Key,title随便填,粘贴key。为了验证是否成功,在git bash下输入:
1
|
$ ssh -T git@github.com
|
如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access ,这就表示已成功连上github。
接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置username和email,因为github每次commit都会记录他们。
1
|
$ git config --global user.name "your name"
|
设置完后,使用hexo d
命令发布内容就不需要再输入密码了。
清除缓存
清除缓存文件db.json
和已生成的静态文件public
。
在某些情况(尤其是更换主题后),如果发现您对站点的更改无论如何也不生效,您可能需要运行该命令。
1
|
$ hexo clean
|
参考
hexo系列教程:(二)搭建hexo博客
hexo系列教程:(三)hexo博客的配置、使用
总结
到现在为止,我们已经搭建起博客,并能写文章了,一个具备基本功能的博客已经实现了。由于本文是博主工作之余写的,比较仓促,难免有错误,欢迎指正。后面的文章将介绍本博客使用到的一些实用的功能,如访问次数,新浪微博秀,RSS,多说评论等,喜欢这些功能的朋友可以继续跟随。
本文非常详细的介绍了搭建过程,但是如果您还是在搭建的过程中碰到了问题,欢迎您在下面留言探讨。亦或是您觉得博主码文辛苦,想评论鼓励,博主也表示欢迎。