引言
### 之前用阿里云弹性web托管采用wordpress搭建的个人博客,经过我使用一段时间之后发现存在很多问题:
- 网站的响应速度非常慢,估计打开主页需要3-4s的时间,我经过搜索发现很多人都有这样的问题,所以应该不是wordpress的锅,而是阿里云弹性web托管的问题,毕竟我买的时候一年只要几百块,而且还是最便宜的经济版(内存128M+2G网页空间+4G流量+1G数据库)。其实我后来才知道弹性web托管是一个啥玩意
,和虚拟机差不多,性能非常有限。可惜我当时不知道啊,否则应该买云虚拟主机独享版的,虽然贵一点,但是应该会流畅很多。
- 我最开始买的是经济版,因为访问速度慢的原因,我昨天打算把它升级成高级版(256M内存+4G网页空间+2G数据库)。我花了不到20块钱买了试用升级两个月。但是最坑爹的事情发生了,我在升级了之后,原来
的网站打开速度并没有提升多少(至少我没感觉到),而且出现了一系列的问题,最后我连后台都进不去了,
一直提示我500内部错误。我搜索了半天也没找到解决办法。而且我用filezilla也一直连不上ftp(我确认账号和密码都是对的,升级之前一直可以登录),这样我根本没法检查wordpress到底哪里出现问题
了。于是我陷入了只能浏览我的博客,但是却无法登录后台的尴尬境地。
- 尝试了半天我也没有解决这个问题。最后想了一下,反正我的web弹性托管再过一个多月也就到期了,算
了,干脆不续费了。重新找个其他的办法搭博客吧。这里额外说一句,之前一直是在博客园写博客的,其实
还是很不错的,我一直是用的markdown写的,感觉博客园的markdown解析速度挺快,而且网页打开也很快。虽然如此,但是我还是想搭一个自己的博客(毕竟可以自己的地盘自己做主嘛)。想到了之前好像看过
可以用github免费搭建静态网页的博客。于是我就查资料开工了。事实证明,用github搭建博客稍微有点麻烦,但是对于一般的程序员应该花几个小时就搞好了,我自己大概花了不到三个小时吧。
1. 搭建过程
#### 因为网上已经有很多介绍怎么用github搭建博客的教程了,其中不乏一些非常详细优秀的教程,所以这里我就不从头详细描述一遍了。只是简单走下流程,贴一些有用的资料和遇到的坑。(注:我的本机系统是Ubuntu 16.04,好像windows系统搭建过程略有差别,如果你是windows系统,请搜索其他安装教程)。
### 1.1 我参考的资料。
- [在github上搭建hexo个人博客(Linux-Ubuntu)](https://www.jianshu.com/p/f2285d63b3a8)
- [我是如何利用Github Pages搭建起我的博客,细数一路的坑](https://cczeng.github.io/2017/05/03/git/%E6%88%91%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%A9%E7%94%A8Github-Pages%E6%90%AD%E5%BB%BA%E8%B5%B7%E6%88%91%E7%9A%84%E5%8D%9A%E5%AE%A2%E2%80%94%E2%80%94%E7%BB%86%E6%95%B0%E4%B8%80%E8%B7%AF%E7%9A%84%E5%9D%91/)
- [hexo推荐主题yilia](https://github.com/litten/hexo-theme-yilia)
#### 推荐按照[我是如何利用Github Pages搭建起我的博客,细数一路的坑](https://cczeng.github.io/2017/05/03/git/%E6%88%91%E6%98%AF%E5%A6%82%E4%BD%95%E5%88%A9%E7%94%A8Github-Pages%E6%90%AD%E5%BB%BA%E8%B5%B7%E6%88%91%E7%9A%84%E5%8D%9A%E5%AE%A2%E2%80%94%E2%80%94%E7%BB%86%E6%95%B0%E4%B8%80%E8%B7%AF%E7%9A%84%E5%9D%91/)这篇教程进行安装,因为作者写的比较详细,如果遇到一些问题,可以自行搜索解决或者参考其他教程。
### 1.2 我遇到的一些坑。
- 前面安装nvm,node.js应该没有太多的问题。我遇到的主要问题集中在将本地的hexo产生的文件同步到github以及后面hexo yilia主题配置的问题。hexo主要有`hexo init`,`hexo g`,`hexo s`,`hexo d`,`hexo clean`,`hexo new`等命令,分别表示`初始化`,`生成静态文件`,`开启本地服务器,在浏览器预览`,`将本地文件同步到关联的github repo`,`清空缓存`,`产生新文章`。注意在配置好hexo以及关联好github repo之后,最好每次执行`hexo g`,`hexo d`之前先执行一下`hexo clean`清空一下缓存,否则可能你输入博客的网址无法查看到你修改之后的页面。比如我当时弄了半天都没法正常查看我的博客主页,一直提示404,找不到github pages。不过我后来关闭了一下浏览器,执行了一下`hexo clean`就可以正常查看了。所以你如果遇到问题,不妨关闭浏览器重新打开,或者多刷新几次,说不定就好了。
- yilia的配置。这个其实可以查看yilia的官方github,讲的比较详细。其实最主要就是装好了yilia之后,修改hexo的全局`_config.yml`配置文件以及`themes/yilia/_config.yml`文件。至于配置参数怎么写,yilia的[官方配置文件](https://github.com/litten/hexo-theme-yilia)都给你写好了,照葫芦画瓢改成你自己的就可以了。但是特别需要注意的是!!!:这里有两个`_config.yml`文件,一个是hexo全局的,还有一个是yilia的,一定要区分清楚!在全局配置文件里,你只需要加上下面的配置条件:
```
jsonContent:
meta: false
pages: false
posts:
title: true
date: true
path: true
text: false
raw: false
content: false
slug: false
updated: false
comments: false
link: false
permalink: false
excerpt: false
categories: false
tags: true
```
- 而在yilia的配置文件里,你才需要按照yilia官方文档那样修改yilia主题的配置参数。想我当时就是不小心把yilia的配置命令写到全局`_config.yml`文件里了,搞了半天主题一直都不变,最后才发现写错文件了,真的是。。。。另外还有一个问题是如果你使用`hexo s`在本地浏览器预览,可能会发现图像url没法正常解析(图像无法显示)以及图标中文乱码的情况(我自己碰到了),所以如果你也碰到了一样的问题,直接去打开你的博客主页浏览应该就好了。(原因不详)
- 最后知乎上还有一篇文章[手把手教你建github技术博客by hexo](https://zhuanlan.zhihu.com/p/22183337)写的还是不错的,有些详细的yilia配置细节可以参考下,比如yilia博文添加多个tags是`[tag1,tag2]`这样的形式而不是`tag1,tag2`等等。
2. 成果展示
我的github博客主页是[Lyrichu's Blog](https://lyrichu.github.io/),原来的wordpress搭建的[博客](http://www.movieb2b.com)后面估计不会维护了。以后主要在[博客园](https://www.cnblogs.com/lyrichu)和github博客写文章了。