前因后果
之前,我是在cnblog上注册了自己的博客,写过几篇文章之后,由于各种原因没能一直写下去。 前段时间偶然手欠的自己注册了个域名(Alamuhan),就借助Github Pages打了个博客环境(oubaguilai),挂到了自己的域名下。以便于继续写博客记录下学习的一些摘要,自己以后使用时方便回顾,当然,如果能给一些刚开始学习的同道小白有点辅助作用那是再好不过的了。
如何搭建自己的博客
Github Pages(载体) + Hexo(框架)=> 博客
我的博客主要是借助Github Pages为载体搭建的,Github Pages是github公司(现在是微软的子公司)提供的免费的静态网站托管服务,用起来方便而且功能强大,不仅没有空间限制(为免费用户提供了500M空间),还可以绑定自己的域名到pages.github.com上。通过Github Pages搭建自己的博客不是一定需要一个域名的,它本身就有访问的服务,只不过有个专属域名访问起来会方便很多(嘿嘿,其实是满足下自己邪恶的的虚荣心,装)。
注意:一般新建一个仓库,仓库的名字叫做 username.github.io 或者是 orgnizationname.github.io, 注意这里的 username 和 orgnizationname 要严格替换成你自己的用户名或者组织名,大小写也要区分,否则就会有问题。
其实只要整个git系统搭建后运行正常,接下来搭建博客环境的主要部分就是找一个好的博客框架(大牛可以自己写框架),然后利用git把整个环境跑起来(本地 <=> github在线),我这里借助了Hexo来作为整个博客框架。
Git环境搭建
这不是我这里介绍的重点,只要你的git本地和代码库是正常对接使用的就可以,所以不再详细介绍(如果你是搞开发的,git是很值得去了解和使用的版本控制工具)。
推荐几个别人的博客:
1.GitHub和Git超超超详细使用教程
2.GitHub 使用教程图文详解
3.GitHub使用教程、注册与安装
Hexo环境搭建
Hexo是一个快速,简单和强大的博客框架。您使用Markdown(或其他语言)撰写帖子,Hexo会在几秒钟内生成具有漂亮主题的静态文件,可以方便的生成静态网页托管在github和Heroku上。如何安装Hexo请看hexo中文文档,很详细的,安装好后重点在配置_config.yml,主要是和git 有关系的两个点:
---------------------------------------_config.yml---------------------------------------------
url:您网站的网址(也就是你的git的项目地址,这里是 https://github.com/{username}/{username}.github.io)
deploy: GitHub存储库
type: 类型 git
repo: 代码库 (git@github.com:{username}/{username}.github.io.git)
branch: 分支
---------------------------------------_config.yml---------------------------------------------
剩下的基本还是那个只要以下步骤走就Ok了。
$ hexo init [文件夹]
$ npm install
然后修改配置_config.yml中的url和deploy,爱他的自己看情况,都可以修改。
$ hexo new [layout] <title> 创建一篇新文章,如果有文章(一般都会有Hello world),可以不走这一步
$ hexo server 本地服务跑起来根据提示信息访问本地网址,就能看到博客的页面了
$ hexo generate 生成可以发布成网站的静态页面
$ hexo deploy 直接发布到github上去(注意:git不要直接写https://github.com/{username}/{username}.github.io,生成出错)
然后再访问你的Github Pages主页,或者关联的域名,就能看到自己搭建的博客了。
在使用过程中发现, 每次hexo deploy 之后, 绑定域名的网站都会出现404, 而https://{username}.github.io则访问正常。再次来到Github pages–>Settings–>Custom domain, 发现Custom domain已经重置了,需要手动再次重新关联。
问题原因 : CNAME文件每次部署都被自动删除.
解决方案 : 将CNAME文件放在source目录下.