以前一直想建立一个博客,但是一直没有腾出时间来,只是用简书来代替。今天终于腾出来点时间,做了这件事。这篇博客既是测试,又用来记录建立博客过程。
关于Hexo
Hexo是基于node.js的一款博客框架,支持markdown,部署简单,而且拥有大量插件。如果想深入了解可以查看Hexo官方中文文档。
下载Hexo
由于Hexo基于Node.js,而且要使用github的静态网页,所以要先下载node.js和git。
$ brew install node.js git
接下来就是下载Hexo
$ npm install -g hexo-cli
下载完成之后,接下来就进入正式配置环节。
GitHub相关配置
github的静态网页分为个人(组织)主页和项目主页。个人主页是要建立username.github.io
为名的仓库来管理,而项目主页就是在项目仓库中添加gh-pages
分支来管理。个人主页的域名是http://username.github.io
,项目主页的域名是http://username.github.io/projectname
。
这次,我主要介绍的是个人主页的建立方法。
建立repo
我想建立一个以username.github.io
为名的repo对于一个使用过github的人不算陌生,这里就不再赘述了。
设置静态页面
建立好repo之后,我们进入repo,点击setting选项进入设置界面。找到Automatic Page Generator按钮,点击进入。以后的工作就是点击绿色的按钮,一直使用默认设置。因为用hexo部署之后,所有的内容还会被删除的。
再次进入repo设置界面,你会看到类似下图的情况,这时你的静态网页就建立成功了,可以在浏览器中输入域名进入了。
配置Hexo
好了,接下来就是配置本地Hexo了。
初始化Hexo
你需要在本地建立一个目录,将自己的博客都放到这个目录里面进行管理。依次执行以下命令。
$ mkdir Hexo
$ cd Hexo
$ hexo init
接着等待init完成,这时你的Hexo目录下面就出现了一些文件和目录。至此,Hexo初始化完成
初次体验Hexo
在Hexo目录下执行以下命令
$ hexo g
然后输入
$ hexo s
这时,本地的hexo服务就启动了,在浏览器地址栏输入http://loalhost:4000/
就能看到Hexo界面了。这里显示的博文是初始化时hexo帮你建立的,以后可以删除。
在以后的配置中,你还可以使用这种方法进行测试。
修改全局配置文件
Hexo目录下面的_config.yml
是Hexo的全局配置文件。你可以通过修改该文件完成Hexo的设置。文件中相关设置的具体介绍可以参看Hexo官方中文文档。
设置完之后记得使用$ hexo g
应用配置。
添加文章
在Hexo目录下输入
$ hexo new yourblogname
这时,就会在source/_post目录下生成yourblogname.md
文件,编辑它就可以啦。如果要使用图片,可以将图片放在和markdown文件同一个目录下,部署时,图片也会上传到github的仓库,这样就不需要图床啦。
当source/_post目录下没有任何东西时,$ hexo g
是会报错的。
使用git部署
文章写完或修改了设置之后,我们需要把修改利用git部署到博客上,这是就需要使用Hexo相关的插件进行部署啦。
下载hexo-deployer-git
$ npm install hexo-deployer-git --save
然后修改_config.yml
中的deploy相关内容
deploy:
type: git
repo: git@github.com:yourname/yourname.github.io.git
branch: master
修改完之后,依次执行
$ hexo clean
$ hexo g
$ hexo d
登陆http://username.github.io
就能看到博客内容啦。
进阶
更换主题
在Hexo目录下执行$ git clone <repository> themes/<theme-name>
命令,就可以下载相关主题。然后按照如下方式修改_config.yml
文件
# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: landscape //themes文件夹中对应文件夹的名称
添加RSS订阅
当自己的博客被别人订阅的时候是一件多么自豪的事情,所以赶快给自己的博客添加订阅功能吧。执行命令
npm install hexo-generator-feed --save
然后在_config.yml
中添加
feed:
type: atom
path: atom.xml
limit: 20
#type 表示类型, 是 atom 还是 rss2.
#path 表示 Feed 路径
#limit 最多多少篇最近文章
总结
好啦,我的教程就到这里啦。如果想了解更多关于Hexo的内容,就去阅读Hexo官方中文文档吧。