版权声明:本文为博主原创文章,如需转载请注明出处。
前言 | Preface
建立博客也花了些心思,记录下这点滴
前后也是花了一天时间才建立好博客,之前总有点惰性,但好歹下决心把博客建起来了;我之前在CSDN上的博客写过三百多篇文章,感觉并不是很舒服,最后就自己搭建了;我这里使用的是Hexo加上Github。具体这些是什么就自行谷歌吧,本文主要写整个流程和一些问题,希望能切实帮助到其他第一次建立博客的同学,尤其一些不是很懂前端的。
我其实刚开始搭建就是对前端了解太少,后来遇到很多小白的问题
安装Hexo,Node.js和Github
关于什么是Hexo,推荐看:http://zipperary.com/2013/05/28/hexo-guide-1/
Note:本文使用的环境是Window用户,至于Linux和Mac用户我暂时还没有尝试,可以Google。我的系统是win8.1。
安装Node.js
Node.js下载地址:https://nodejs.org/en/。可能某些同学会遇到MSI格式的文件无法安装的问题,具体情况在安装程序的时候会报错:“There is a problem with this Windows Installer package. A DLL required for this install to complete could not be run. Contact your support personnel or package vendor.”
这是因为没有取得管理员权限,而MSI格式的文件右键也没有“以管理员身份运行”的菜单项。这时候要在管理员权限下的命令提示符运行这个软件,比如下图所示:
现在应该需要科学上网才能去下载,没办法做到的同学国内找资源,也是比较好找的。
安装Github
小白推荐使用Github for windows,下载地址https://desktop.github.com/。
安装Hexo
前一步安装Github for windows之后,桌面上会有一个GIt Shell,双击打开。
在里面输入npm命令安装Hexo。
1 | npm install hexo-cli -g |
这一步可能会比较慢,如果时间太长,推荐全局科学上网。
到这需要安装的东西就完成了,下面开始进行配置。
配置文件
创建Hexo文件夹
自行建立一个空文件夹,比如我的是:E:\blog
。进入Git Shell切换到该路径下(cd e:\blog
),然后执行以下指令。
1 | hexo init |
等待Hexo初始化完成,文件夹中会自动新建所需要的文件夹。
然后执行
1 | npm install |
现在文件已经部署到自己的电脑上了,可以在本地进行查看。
本地查看
1. 生成完整的网页静态文件,命令为:
1 | hexo g |
此时目录中会生成一个文件夹,比如在我的目录(
E:\blog
)下生成了一个public
文件夹,这里面放的就是我们后面要传到GIthub上面的文件。
2. 本地生成服务器,命令为:
1 | hexo s |
效果如下图:
然后在浏览器地址栏中输入:localhost:4000
,就可以查看最终的效果。这里我就不展示了,因为hexo原本的模板效果我已经没有了,我的博客都已经改为了Jacman模板,之后会说明。
部署到Github上
首先注册帐号
Github帐号注册地址:https://github.com/。
接下来创建仓库(repository)。
在自己Github主页下点击repository,然后点击new。接下来输入名字,如下图:
注意这里因为我已经创建过了,所以有错误提示,第一次建立的时候没事。要用自己的用户名加
.github.io
,比如我的就是yoferzhang.github.io
,名字千万别错。
打开之前安装好的Github for windows客户端Github,然后点左上角的加号,选择Clone
,下面选中刚刚新建的仓库,确定。选择自己喜欢的位置,我直接就放在了E盘根目录下(E:\
)。这时候E盘下就会生成一个文件夹,我的是E:\yoferzhang.github.io
。
把刚才Hexo生成的静态文件拷贝到Github生成的文件夹中。
我的是E:\blog\public
文件夹下的所有文件,拷贝到E:\yoferzhang.github.io
。此时Github客户端就会识别出文件的改变,输入Summary,提交,然后点右上角的Sync
,第一次Sync
可能是Publish
。这时候就可以在浏览器中输入yoferzhang.github.io
(注意把用户名换成你的),查看自己的主页。
官方说明:https://pages.github.com/
至此你已经可以通过
yoferzhang.github.io
来访问你的网站了,但我们还想用独特的域名。
域名和DNS
购买域名
域名我是在GoDaddy上买的,整个购买过程很简单,后面的配置问题再详细说明;我买的是.com域名,毕竟这个识别度高些吧。
DNS
我用DNSPOD,用QQ就可以登录管理,这个不需要买,但这个需要配置,后面讲到。
配置域名和DNS
首先去DNOPOD上面添加自己在GoDaddy上购买的域名。
然后去GoDaddy官网,登录进入,找到自己的产品,管理域名,设置域名服务器为DNSPod的2个DNS短地址,参考官方说明:
https://support.dnspod.cn/Kb/showarticle/tsid/42/
PS:官方说明中的图片是比较老的版本,GoDaddy新界面也很好找到相应的设置。
下面需要在项目中添加一个名为CNAME
的文件,可以直接在本地用sublime text新建,比如我在E:\yoferzhang.github.io
文件夹下建立了一个CNAME
的文件,里面输入你自己的域名(我输入的内容是yoferzhang.com
)。至此,你的博客已经可以通过独有域名(http://yoferzhang.com)进行访问了。
写博客
在你的Hexo文件夹下(我的是E:\blog
)用Git Shell输入:
1 | hexo n "hexo post" #`hexo post`是文件名,自己修改 |
就会在E:\blog\source\_posts
中生成一个hexo-post.md
文件,这个文件就是你的博文md文件,推荐用sublime text
编辑,自行寻找sublime添加markdown语法高亮的方法。当然,其他markdown编辑器也非常多,自行取舍。重要的是动手写。
发布内容到
pulbic
文件夹,最后同理手动复制内容到Github本地仓库目录(E:\yoferzhang.github.io
),同步到Github。查看效果。
1 | hexo clean |
模板
大家刚部署好的博客可能和我现在长的不一样,那是因为我使用了Jacman模板,Jacman模板的下载和配置大家可以直接参考原博主:
参考文献
对于其中很多概念不理解的地方可以参考下面的博客。
- 使用GitHub和Hexo搭建免费静态Blog - http://wsgzao.github.io/post/hexo-guide/
- 如何搭建一个独立博客——简明 Github Pages与 jekyll 教程 - http://cnfeat.com/blog/2014/05/10/how-to-build-a-blog/
- Zippera hexo系列教程 - http://zipperary.com/categories/hexo/
Zippera的系列里面有Hexo原模板的详细优化配置。
迁移
写于2016年4月20日
前端时间把博客部署到了coding,结果最近两天可以上传成功,但是网页不更新了,伤,又换回到了github。
写于最后
可能有同学会在Jacman模板的配置那里遇到比较多的问题,我就直接把我的配置贴在这里了,不懂的可以参考一下。
Hexo配置文件(
E:\blog\_config.yml
)
1 | # Hexo Configuration |
上面repository里面我没有填github,而是coding的地址,是因为我换到coding部署了,毕竟github国内访问会稍慢。下一篇说一下转到coding配置的问题。
Jacman配置文件(
E:\blog\themes\jacman\_config.yml
)
1 | ##### Menu |
里面涉及到我自己一些帐号的问题我就删掉了