从零开始的个人博客,hexo+githubPages快速搭建


从零开始的个人博客,hexo+githubPages快速搭建

- hexo
- githubPages
- 博客搭建

说明

域名买了n久了,说好的搭建自己的博客,在历时大半年后,终于开始搭建了。
首先本人作为一个开发者,本来应该全部都自己写的,但是最后选择了方便的hexo+githubPages来搭建自己的博客(说这么多,其实就是自己懒和菜),话不多说下面就开始正题。

开始之前

在开始搭建博客之前,请确认:
1.github账号,这个就不多说了,程序员必备
2.安装node.js npm 看这里

建立Git仓库

新建一个名为 用户名.github.io的仓库,必须使用用户名,比如:我的用户名是xxx 那么仓库名为 xxx.github.io,然后我们就可以直接访问 xxx.github.io
注意:每个账户只能建立一个这样的仓库。
我们可以给仓库绑定域名(如果有的话),当然也可以直接使用xxx.github.io

配置SSH key

查看是否存在已有的SSHkey

$ cd ~/.ssh

(ps:我用原来的SSHkey没能通过验证,后来格式化了该文件夹后重新生成的SSHkey)
如果没有存在的SSHkey,则:

$ ssh-****** -t rsa -C "your email"

确认后,前往文件 .ssh\id_rsa.pub 里面的内容将会在Git的SSHkey设置里面用到。
打开github设置,选中_SSH and GPG keys_,点击 new SSHkey按钮
从零开始的个人博客,hexo+githubPages快速搭建
在title中填写任意内容。
在key中粘贴,.ssh\id_rsa.pub里面的所有内容,保存。

测试SSHkey

打开终端,输入:

$ ssh -T [email protected]

如果提示:

Are you sure you want to continue connecting (yes/no)?

输入yes

Hi HeartSheathWrapKnife! You’ve successfully authenticated, but GitHub does not provide shell access.

注意:如果验证一直通不过,提示 Permission denied,则可能本机SSH环境SSHkey添加错误,或者失效,重新添加即可。

hexo

说说我对hexo粗浅的理解,因为github pages存放的都是静态文件,不可能手动对本地文件进行一个一个的更改,所以由hexo统一管理所有md文件,由hexo通过source文件中的本地md以及图片等设置,生成成对应的静态网页(存放在public文件中,也就是我们的xxx.github.io的实际内容),然后再将有改动的静态页面提交到github。
hexo官网
hexogithub链接

安装hexo

确认所有需要的环境(git,node.js ,npm)均已安装后

$ npm install -g hexo-cli

安装完成后,在桌面或者任意指定目录,建立hexo项目文件夹。我一般项目都建立在桌面。比如/Users/lijiayu/Desktop/LostiforHexo

$ cd 你新建的文件夹目录
$ npm install

命令执行完毕后,该文件夹大概目录如下。

.
├── _config.yml
├── package.json
├── scaffolds
├── source
|   ├── _drafts
|   └── _posts
└── themes

然后,生成静态文件。

$ hexo g #生成静态文件
$ hexo s #本地预览
$ hexo d #上传到github仓库

可以选择本地预览,开启本地预览后,在浏览器访问http://localhost:4000 打开后显示默认主题的博客,以及一篇hello world 的文章。这个时候我们博客的骨架就基本搭建完成了。

绑定域名

绑定域名分2种情况:带www和不带www的。
域名配置最常见有2种方式,CNAME和A记录,CNAME填写域名,A记录填写IP,由于不带www方式只能采用A记录,所以必须先ping一下你的用户名.github.io的IP,然后到你的域名DNS设置页,将A记录指向你ping出来的IP,将CNAME指向你的用户名.github.io,这样可以保证无论是否添加www都可以访问
从零开始的个人博客,hexo+githubPages快速搭建
{% asset_img [email protected] 添加CNAME记录 解析 %}
从零开始的个人博客,hexo+githubPages快速搭建

到项目目录/source 里创建一个CNAME,并在里面写下你的域名如:lostifor.com。保存。

支持https,获得小绿锁

GitHub Pages已经开放了自定义域名支持HTTPS,只需要在repositorys设置中开启Enforce HTTPS的选项即可。
从零开始的个人博客,hexo+githubPages快速搭建

接下来就是给博客更换主题,添加功能,以及美化等工作。
从零开始的个人博客,更换next主题及配置