Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
之前的这篇文章《Linux下使用 github+hexo 搭建个人博客01-hexo搭建》,相信大家都知道怎么搭建 hexo ,怎么切换主题,并且完成了一篇博文的创建,以及 MarkDown 标记语法的用法。如果还不清楚或者不知道的,那就先回去看看这篇文章。
那么我们接下来就需要将 hexo 和 GitHub Pages 结合了,为什么要结合呢?因为当前我们的博客还是在本地机器,如果因为我们不小心删了数据,或者购买的云服务因为没有及时续费,导致机器被释放了,那我们就永久失去了这些数据。
因此如果这些数据对我们还有用,并且想永久保存,那么就需要找个类似 SVN 或者 Git 之类的代码版本托管仓库了。那理所当然选 GitHub 了,就当前环境还有比 GitHub 更好的吗。
注册 GitHub 账号
GitHub 官网:
https://github.com/
具体注册过程也很简单,这里就不说了。请自行注册。
使用 GitHub Pages
创建指定的 GitHub 仓库
点击创建按钮
仓库名称和配置选择
开启 GitHub Pages
进入 Settings
默认已开启 GitHub Pages
选择主题
浏览器访问
https://zhanglianghhh.github.io/
在 GitHub 上添加 SSH Keys 信息
为了能将个人博客服务器上的博客数据推送到 GitHub,达到数据永久保存效果,我们需要把博客服务器的 SSH keys 信息在 GitHub 上添加信任。
本地服务器创建 ssh-key 信息
1 [root@zhangblog ~]# ssh-keygen -t rsa # 如果遇见等待输入的地方,按下 Enter 回车键即可,无需任何其他输入
2 Generating public/private rsa key pair.
3 Enter file in which to save the key (/root/.ssh/id_rsa):
4 Enter passphrase (empty for no passphrase):
5 Enter same passphrase again:
6 Your identification has been saved in /root/.ssh/id_rsa.
7 Your public key has been saved in /root/.ssh/id_rsa.pub.
8 The key fingerprint is:
9 SHA256:73zrQW4LTBgAVqQKvOoTxFrgaGF/sobf643Q+3w7or0 root@zhangblog
10 The key's randomart image is:
11 +---[RSA 2048]----+
12 | o++ |
13 |oo . . . |
14 |*oo . . |
15 |.*o+ . o |
16 |+oo + S . . |
17 |oo o. + o |
18 |. +... + + |
19 |.. ...*. = o.o |
20 | .. .*+E+.=o+. |
21 +----[SHA256]-----+
22 [root@zhangblog ~]# cd .ssh/
23 [root@zhangblog .ssh]# ll
24 total 12
25 -rw------- 1 root root 0 Jun 3 17:02 authorized_keys
26 -rw------- 1 root root 1675 Jun 5 14:17 id_rsa
27 -rw-r--r-- 1 root root 396 Jun 5 14:17 id_rsa.pub
28 -rw-r--r-- 1 root root 395 Dec 14 17:15 known_hosts
29 [root@zhangblog .ssh]# cat id_rsa.pub # 具体的公钥信息
30 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD4iDDDDDDDDDDgMMutdH7KdI5P7BrtHbfRG+MYyr1/Gtz45hJgbVHBCTFZaTn2+MekFQcZVkyc2kEU7L7mm4ZGWkStgbXkas+uTFwo3kLlX8ozcUC3jM8rhzbWPv8piq58ezBnrMZ0zNsCgHGXpokUmLqYt1mpLXz5rsOzwGgHHkp+Wlr+6tTQxr/+9T4CiE/RkFKi/mehn01rjOcVluYSkwkVii03EzMlMcoyV3ctnWzwyZIWAQAsvDSN2CQAdRtaUHOJOAoRv8/s4jDiWU1ia0JYmm2D/IWcLl2hxNtGeVHTFk9l1djtUQu47zuoOM4y6ySlUx28HNIAMw14gjIv5 root@zhangblog
GitHub 添加 SSH Keys
OK,这样我们就添加成功了。
GitHub 连接测试
1 [root@zhangblog ~]# ssh -T git@github.com
2 The authenticity of host 'github.com (13.250.177.223)' can't be established.
3 RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
4 RSA key fingerprint is MD5:16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
5 Are you sure you want to continue connecting (yes/no)? yes
6 Warning: Permanently added 'github.com,13.250.177.223' (RSA) to the list of known hosts.
7 Hi zhanglianghhh! You've successfully authenticated, but GitHub does not provide shell access.
可见连接 GitHub 成功。
设置你的账号信息
1 [root@zhangblog hexo]# git config --global user.name "zhanglianghhh"
2 [root@zhangblog hexo]# git config --global user.email "zhanglianghhh@163.com"
这里的用户名和邮箱,应该和Github上的账户邮箱保持一致,防止之后同步的不一致。
Hexo 部署到 GitHub Pages
_config.yml 配置修改
1 [root@zhangblog hexo]# pwd
2 /app/softinsall/hexo
3 [root@zhangblog hexo]# vim _config.yml
4 ………………
5 # Deployment
6 ## Docs: https://hexo.io/docs/deployment.html # 修改或添加如下信息
7 deploy:
8 type: git
9 repo: git@github.com:zhanglianghhh/zhanglianghhh.github.io.git
10 branch: master
在部署到 GitHub 之前,还需要安装如下扩展:
1 [root@iZ28xbsfvc4Z hexo]# pwd # 站点目录
2 /app/softinsall/hexo
3 [root@iZ28xbsfvc4Z hexo]# npm install hexo-deployer-git --save
部署到 GitHub
1 [root@zhangblog hexo]# pwd
2 /app/softinsall/hexo
3 [root@zhangblog hexo]# hexo d -g # 部署前,先生成静态文件 -g 可选
浏览器访问
1 https://zhanglianghhh.github.io/ # GitHub Pages 的访问
2 http://www.zhangblog.com/ # 个人网站的访问
推荐阅读
Linux下使用 github+hexo 搭建个人博客01-hexo搭建
Linux下使用 github+hexo 搭建个人博客02-hexo部署到Github Pages
Linux下使用 github+hexo 搭建个人博客03-hexo配置优化
Linux下使用 github+hexo 搭建个人博客04-next主题优化
Linux下使用 github+hexo 搭建个人博客05-next主题接入评论系统
Linux下使用 github+hexo 搭建个人博客06-next主题接入数据统计
Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理
- 谁说 Java 要过时?2017年Java 大事件一览及未来前瞻
- mongodb的用法
- silverlight中如何将string(字符串)写入Resource(资源)?
- Python练习环境搭建-引入预定义数据
- 振幅和成交量的关系
- silverlight中的几个冷门标记 {x:Null},d:DesignWidth,d:DesignHeight
- 用scikit-learn和pandas学习线性回归
- 自动驾驶玩出新花招,以后老司机们就要失业了
- silverlight.net官方网站图片切换源码
- 制作iis自动安装包
- 安装程序无法复制一个或多个文件。特定错误码是0x4b8。
- silverlight中"制作逐帧动画"/"播放gif"收集
- Android新手之旅(1) 开发环境的安装
- Python安装模块
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 用matplotlib实现画中画
- 为matplotlib设置不同的主题
- 模式利器 | MEIC污染源清单向WRF-Chem模式网格插值分配工具——meic2wrf
- Windows给力!可以扔掉Linux虚拟机了!
- 好慌,Redis这么多集群方案,要用哪种?
- 你真的了解MySQL 8.0 数据字典吗?
- 《调教命令行09》磁盘很廉价,放小电影最合适了
- 既保护隐私又快速训练,Facebook开源Opacus库,利用差分隐私训练PyTorch模型
- 为什么Java中1000==1000为false而100==100为true?
- Java自动化测试 (元素定位 23)
- Java自动化测试(webdriver常用API 24)
- Java自动化测试(特殊元素处理 25)
- 那些Vue开发遇到的坑---响应式系统
- 基于Ansible和Devops的一键测试环境部署实践
- STM32硬核DIY机械键盘|蓝牙USB双模|灯控