OSX 10.11下搭建hexo+github静态博客
Contents
Hexo?我不懂, 我只知道是个台湾大学生Tommy的牛作。什么是静态博客?我不懂,我只知道我讨厌新浪博客、QQ空间这些花里胡哨、拓展性差的网站;但是我又没钱自己买域名做网站,也没那时间。平时整理的东西,总想记录在一个安静、简洁的角落,引用一位偶像的话
学会积累,是科研的第一步。
于是,我偶遇Hexo并爱上了它。
注册github账号及创建仓库
注册过程就不多说
建议使用英文小写作为你的ID, e.g.
marscfeng
为博客创建一个仓库,Repository
注意仓库名称是固定的(Repository name)—— ID.github.io, e.g.
marscfeng.github.io
安装Git
为了在本地建立项目并push到远程仓库中,我们需要在本地电脑上安装Git,OSX下推荐使用Homebrew来安装。
安装Homebrew
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装git
$ brew install git
安装Hexo
Hexo是基于Node.js,因此必须安装nodejs,然后用nodejs自带的npm安装hexo
安装node
$ brew install node
有时候网速会影响安装过程,建议直接Node官网下载安装。
安装Hexo
$ npm install -g hexo-cli
hexo的使用
网站搭建初始化
#新建一个网站,默认在当前文件夹建立网站
$ hexo init
#安装依赖关系
$ npm install
新建网页
# 默认新建posts,生成在source/_posts下
$ hexo n "title"
启动本地服务器
#生成静态网页文件
$ hexo g
#启动服务器
$ hexo s
初始化之后,在没有做任何修改操作之前,启动服务器,你就可以在本地浏览器欣赏你的原始博客框架,在浏览器输入localhost:4000
就可以查看本地博客
发布网站
$ hexo d
在浏览器访问你的仓库就可以看看你的网站了,e.g. https://marscfeng.github.io
。
部署自己的网站
修改_config.yml文件,该文件控制着整个网站的框架、主题等属性
title: marscfeng's talk
subtitle: Idiot of Geophysics\ Linux\ Mac OSX
author: Feng Cheng
language: default #english/zh-CN/zh-TW
#...
theme: landscape-plus #landscape-plus是默认的landscape的升级版,本人更为喜欢
deploy:
type: github
repository: https://github.com/zippera/zippera.github.io.git
branch: master
其他部署,比如添加
About me
、评论
等模块,会在后文阐述
hexo常见问题
生成静态网页出错
$ hexo g
Error: Cannot find module './build/Release/DTraceProviderBindings'] code: 'MODULE_NOT_FOUND'
安装插件
$ npm install hexo --no-optional
发布网页出错
$ hexo d
ERROR Deployer not found: git
因为hexo升级3.0需要安装插件
$ npm install hexo-deployer-git --save
mathjax公式无法渲染
$ npm install hexo-math --save
push时重复输入用户名密码
github提供了SSH方式进行本地和服务端的链接,但是据自己的尝试和网友反馈,该方法并不可行。 Permanently authenticating with Git repositories给出了两种方法来解决各平台下本地和git服务端链接验证的问题。
Using credential caching
Using the .netrc file
多数网友都是选择第二种,因为操作简单
$ vi ~/.netrc
# 输入服务端及用户名密码
machine github.com
login your-username
password your-password
多个server就重复上面的三行,分别输入对应的服务器、用户名和密码。
Author F. Cheng
LastMod 2015-10-21