zoukankan      html  css  js  c++  java
  • 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主题接入搜索和站点管理

      


  • 相关阅读:
    MySQL数据丢失讨论
    分布式系统之Quorum (NRW)算法
    阿里巴巴-OS事业群-OS手机事业部-系统服务部门招聘Java开发工程师,有意者请进来
    EQueue
    ENode 2.0
    关于MySQL的在线扩容
    我收藏的技术知识图(每张都是大图)
    关于实现一个基于文件持久化的EventStore的核心构思
    Actor的原理
    OAuth 2.0 授权原理
  • 原文地址:https://www.cnblogs.com/zhanglianghhh/p/11268217.html
Copyright © 2011-2022 走看看