本文首发地址: 非生异也

本项目源码托管在GitHub

Why

阮一峰曾经说过:喜欢写Blog的人,会经历3个阶段。

第一阶段,刚接触Blog,觉得很新鲜,试着选择一个免费空间来写。
第二阶段,发现免费空间限制太多,就自己购买域名和空间,搭建独立博客。
第三阶段,觉得独立博客的管理太麻烦,最好在保留控制权的前提下,让别人来管,自己只负责写文章。

在这之前,我在博客园里写了两年的博客,数量虽然不多,但都是自己学习过程的真实记录,这属于第一阶段。随着学习的东西越来越多,总想着要有个独立的个人主页,于是就开始不停地Google。最终在SAE + WordPress 和 GitHub Pages + Hexo 之间选择了后者,一是因为Git的存在,二是因为喜欢这种轻量级框架的简单而强大。

Start

GitHub Pages

GitHub Pages的官方介绍是 Websites for you and your projects. 利用它只需要简单的几步,就可以建立一个自己的站点,前提是已经有了一个GitHub帐号。

1、Create a repository:
repository名称的格式必须为 username.github.io (username为自己的GitHub帐号。)

2、Clone the repository:

$ git clone https://github.com/username/username.github.io

3、Hello World:

$ cd user.github.io
$ exho "Hello World" > index.html

4、 Push it:

$ git add --all
$ git commit -m "Initial commit"
$ git push -u origin master

5、已经生成了你的主页 http://username.github.io

Hexo

Hexo是一个快速、简洁且高效的博客框架,具有如下特点:
急速生成静态网页
支持Markdown
一键部署博客到GitHub Pages等平台
丰富的插件支持

1、 先在本地环境配置好Hexo

$ npm install hexo-cli -g
$ hexo init username.github.io
$ cd username.github.io
$ npm install
$ hexo server

2、将博客部署到GitHub上:这时在浏览器输入http://localhost:4000 就可以在本地预览博客了

安装 hexo-deployer-git

$ npm install hexo-deployer-git --save

修改配置文件_config.yml

deploy:
type: git
repo: <repository url>

提交到GitHub上

$ hexo clean
$ hexo g
$ hexo d

此时访问 http://username.github.io 就和本地一样的效果了。更多Hexo的使用访问Hexo官方文档

Append

现在已经可以通过访问你的GitHub Pages二级域名来访问你的博客了,不过既然是独立博客,当然是应该通过独立域名来访问。

购买域名

由于在国内购买域名需要备案(虽然我已经备案过了),费时比较长,所以我又在国外购买了一个域名。而且正好赶上namecheap疯狂促销,就以很满意的价格买了一年的。

域名解析

添加CNAME

在usname.github.io/source/下新建CNAME文件,写入购买的域名,保存并部署。

DNS设置

建议使用DNSpod,添加两条A记录分别为
192.30.252.153
192.30.252.154
这两个IP即GitHub Pages的IP。

去namecheap修改DNS地址

在域名设置里面将DNS改为DNSpod提供的DNS
f1g1ns1.dnspod.net
f1g1ns2.dnspod.net
可能需要等段时间才能生效。

后记

本文有些地方可能写得不够清晰,欢迎留言交流。

利用GitHub Pages和Hexo搭建个人博客的更多相关文章

  1. 利用GitHub Pages + jekyll快速搭建个人博客

    前言 想搭建自己博客很久了(虽然搭了也不见得能产出多频繁). 最初萌生想写自己博客的想法,想象中,是自己一行一行码出来的成品,对众多快速构建+模板式搭建不屑一顾,也是那段时间给闲的,从前后端选型.数据 ...

  2. 利用GitHub+Node.js+Hexo搭建个人博客

    本篇是自己在搭建Hexo博客平台时的一个过程记录.(2019.9.13实测有效) GitHub 账号注册 因为此文所搭建的个人博客是基于GitHub平台服务的,所以首先是注册GitHub,当然已有账号 ...

  3. 使用github pages, hexo搭建个人博客教程

    具体的原理性的东西就不说了直接上教程,怕等下自己忘了. 一. github 阶段 申请一个github 账号并成功登录进去. 创建一个名字为xxx.github.io的空项目. 二. hexo 阶段 ...

  4. Github Pages和Hexo创建静态博客网站

    Github Pages和Hexo创建静态博客网站 安装Node.js 本人是window环境,所以下载window版. 下载地址:https://nodejs.org/en/download/ 下载 ...

  5. 使用Github Pages和Hexo构建个人博客

    Github Pages可以创建免费的静态站点,支持自带主题.支持自制页面等,并且可以使用Jekyll或者Hexo等静态博客框架进行管理. 独立博客是博客园等博客平台之外的一个良好补充,相比使用虚拟主 ...

  6. 在GitHub上使用Hexo搭建静态博客

    搭建静态博客须要一个前提是电脑上有安装git而且有github帐号,这个不懂能够看廖雪峰先生的git教程 1.下载nodejs.在官网上能够下载 2.使用git进入你新建的一个目录,输入命令 npm ...

  7. github page 和 hexo 搭建在线博客

    目录: 安装node.js与git 常用git命令 安装hexo 配置hexo hexo发布到github 1.安装node.js和git工具 https://nodejs.org/en/ 直接下载安 ...

  8. Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages

    之前的这篇文章<Linux下使用 github+hexo 搭建个人博客01-hexo搭建>,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDow ...

  9. GitHub Pages + Hexo搭建个人博客网站-github风格-采坑记录

    目录 1.本机安装nodejs 2.github上创建仓库 3.安装hexo 4.hexo主题 5.配置主题 6.添加文章 7.使用分类和标签 8.增加文章目录 9.推送github 使用github ...

随机推荐

  1. SRM 212 Div II Level One: YahtzeeScore

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=1692&rd=5858 比较简单. 代码如下: #inc ...

  2. FatSecret Platform API

    在现阶段饮食类的APP发展的非常迅猛,尤其在校园中,学生只需要凭借一个手机就能买到自己想要的食物,真正做到了足不出户.可是如果我们想独立完成一个app就需要有相应的数据支持,这里给大家介绍一个国外的开 ...

  3. 【Python】Django auth 修改密码如何实现?

    使用示例1.创建用户>>> from django.contrib.auth.models import User>>> user = User.objects.c ...

  4. (转)LIB和DLL的区别与使用

    共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library.一种是LIB包含函数 ...

  5. Redis数据类型--List

    Redis列表是简单的字符串列表,依照插入顺序排序. 你能够加入一个元素到列表的头部(左边)或者尾部(右边) LPUSH 命令插入一个新的元素到头部, RPUSH插入一个新元素到尾部. 当一个这两个操 ...

  6. org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'statisticalMapper' defined in file

    ::, [localhost-startStop-1] DEBUG [org.springframework.beans.factory.support.DefaultListableBeanFact ...

  7. 4种常见的MySQL日志类型

    4种常见的MySQL日志类型 .错误日志 记录启动.运行或停止mysqld时出现的问题 log-error=d:/mysql_log_err.txt .查询日志 记录建立的客户端连接和执行的所有语句( ...

  8. 初学者必知的Python中优雅的用法

    转自:http://python.jobbole.com/81393/    

  9. Ubuntu中类似任务管理器的东西?

    Ubuntu里面有没有类似windows中任务管理器的东西呢?怎么打开?谢谢!!!   ================================ 检举| 2009-02-01 16:50提问者 ...

  10. EF--Code First配置问题

    用EntityFramework Reverse POCO Generator工具生成的连接:<add name="Base_dbContext" connectionStr ...