--- date: 2016-07-26 title: 站点迁移 categories: 萱苏小筑 tags: 建站日志 comments: true fancybox: --- ## 从farbox迁移到gitpages 由于在搞博客的时候顺带着学习一下Node.js就希望使用Hexo搭建博客,之前的博客也说过这个情况。 Hexo搭起来还是十分简单的,下面简单说一下流程。 原先的日志也迁移过来了,原来博客还能访问地址http://shichao.farbox.me ## 在Github上搭建Hexo博客 1.首先你需要安装Git、Node.js 2.进入GitBash 输入`npm install -g hexo` 全局安装Hexo 3.创建站点文件夹,在站点文件夹运行GitBash 用Hexo初始化网站 `hexo init` 4.安装依赖包 `npm install` 5.生成网页 `hexo generate`可简写为`hexo g` 6.输入`hexo server`或者简写`hexo s`可以本地查看生成的网站了只要浏览器输入`localhost:4000`即可 7.登陆Github账号创建Repository,名字必须是`用户名.github.io` 8.修改配置文件(我就是在这个位置出现问题,后来得到`@takwolf`耐心帮助,最后解决了问题) 配置文件就是站点目录文件下的`_config.yml` 修改文件里面的deploy。其中的repository就是 Github中创建登陆Github账号创建Repository的地址。 特别要注意的是Hexo有一次大的升级,看到的旧的教程无法使用,最好看官方的文档,我就被教程给误导了。 我的deploy的配置是这样的 ```deploy: type: git repo: https://github.com/wmwwmv/wmwwmv.github.io.git branch: master ``` 修改后保存。 9.如果之前没有绑定SSH Key的话需要生成并绑定,这样生成的网页才能够同步到Gitpages上 9.1.在Git Bash输入以下指令(任意位置点击鼠标右键),检查是否已经存在了SSH keys。 `ls -al ~/.ssh` 9.2.如果没有 输入以下指令(邮箱就是你注册Github时候的邮箱)后,回车: `ssh-keygen -t rsa -C "youremail@github.com"` 9.3.让你输入Key保存地址 9.4.输入密钥口令 9.5.输入 `ssh-agent -s` 9.6.继续 `ssh-add ~/.ssh/id_rsa` 如果出错输入 ``` eval `ssh-agent -s` ssh-add ``` 9.7.复制id_pub文件内容,打开Github个人设置,找到SSH Keys设置,点击Add SSH key,输入标题,再将刚刚复制的秘钥输入。 点击Add Key,输入你的Github密码即可完成SSH Key的添加。 测试命令: `ssh -T git@github.com` 10.最后再输入`hexo g` `hexo clean` `hexo d`即可同步到Github。 11.最后说一下域名绑定: 官方的文档在这里: https://help.github.com/articles/using-a-custom-domain-with-github-pages/ 总结一下,需要在Repo设置处添加域名,然后在Source文件夹下面新建一个CNAME文件,里面是自定义域名。最后在DNS处修改成A或CNAME。 另外修改成A的话必须是官方提供的ip https://help.github.com/articles/using-a-custom-domain-with-github-pages/ 在上面这个文档中有给出。 改成CNAME的话直接改成`用户名.github.io`即可,官方推荐CNAME方式,因为IP随时可能被屏蔽或者更换而无法访问。