将 Hexo 个人博客同时部署到 GitHub 和 Coding 上
一、将个人博客托管到 GitHub 上
关于如何快速搭建自己的个人博客,如何完善自己的个人博客,什么是 GitHub ,如何将自己的博客代码托管到 GitHub 上面等等问题,我之前写过两篇文章已经做了详细的说明,两篇文章如下:
基于 Hexo + GitHub Pages 搭建个人博客
基于 Hexo + GitHub Pages 搭建个人博客(二)
其实是三篇文章,还有一篇没更新到公号上而已,点击文章底部 “ 阅读原文 ” 按钮可以查看第三篇文章。
二、将个人博客托管到 Coding 上
最近博客出了点问题,这几天都在紧急修复,不间断折腾自己的博客,然后弄的差不多,今天非常好奇,于是登录百度统计,发现一个问题,那就是百度无法抓取托管在 GitHub Pages 上的博客,或许是因为 GitHub 是国外的代码托管平台无法抓取吧,然后就有点郁闷了...如下图所示:
而后 Google 上查了下,发现国内有一个代码托管平台叫 Coding ,也可以将个人的 Hexo 博客托管到平台上,然后有点激动,说时迟那时快,立刻动手尝试将自己的个人博客托管到 Coding 上,中间遇到很多坑,折腾好久,最终成功,特此记录。
据了解,之前很多人都是把博客托管到国内的 gitcafe上,后来 gitcafe 被 Coding 收购。当然,据我所知国内还有其他代码托管平台,例如有个代码托管平台叫码云,但是码云能不能托管个人博客代码,我就不清楚了,没怎么用码云,基本用的都是 GitHub ,有需要的可以自行了解下。
1、注册 Coding 帐号
注册网址:Coding 官网
https://coding.net/
2、将本电脑的 SSH 公钥配置到 Coding 上
(1)打开如下电脑 C 盘用户下的 .ssh 目录, 找到 id_rsa.pub 文件,即公钥文件,复制文件中的所有内容,如下图所示:
(2)在 已经登录的 Coding 网站上,打开个人设置,点击 SSH 公钥菜单下的新增公钥,而后把上面复制的内容全部粘贴到公钥内容框下,公钥名称自定义,没有特别的要求,然后点击添加即可,如下图所示:
(3)测试 SSH 公钥是否添加成功:本地打开 Git Bash 窗口,输入一下命令:
ssh -T git@coding.net
这时候会显示是否继续,选择 yes 继续,如果提示下列内容成功,即 SSH 公钥配置成功:
Hello compassblog You've connected to Coding.net by SSH successfully!
当然,compassblog 是我 Coding 帐户的名字,不同的帐户会不一样,如果显示如下错误:
ssh: connect to host coding.net port 22: Connection refused
如图:
说明防火墙完全屏蔽了端口 22 ,这时候不要慌张,直接输入如下命令使用 Coding 提供的 443 端口 SSH 服务即可解决:
ssh -T -p 443 git@git-ssh.coding.net
如下图所示:
然后在输入验证命令,显示 Coding 帐号与相关信息,即 SSH 公钥配置成功。
3、新建项目,存放需要托管的博客代码
(1)在 Coding 的个人主页上点击 + 号,选择项目选项,如下图所示:
(2)选择新建项目后,填写项目信息,项目名称与自己的 Coding 帐户名称项目,项目属性公开私有都可以,个人博客建议是公有,如下图所示:
(3)新建项目完毕后,打开项目的 Pages 服务选项,选择部署来源为 master 分支,并打开强制 HTTPS 访问按钮( https 更加安全),不选择就是 HTTP 访问了,不选择也是可以的,自行决定,点击保存即可,如下图所示:
4、配置博客主文件,同时部署 Hexo 博客到 GitHub 和 Coding 上
(1)打开 Hexo 博客主配置文件 _config.yml,找到 deploy 属性,作如下配置:
deploy:
type: git
repository:
github: git@github.com:compassblog/compassblog.github.io.git
coding: git@git.coding.net:compassblog/compassblog.git
branch: master
(2)打开 Hexo 主目录下的 source 文件,新建文件 Staticfile ,这个文件是 Coding 静态文件部署的标志,注意文件名字必须为 Staticfile,否则 Coding 上无法完成静态文件的部署,如下图所示:
5、测试 Hexo 博客是否成功部署到 GitHub 和 Coding 上
经过前面的步骤,配置基本就已经完成,直接在 Hexo 主目录下打开 Git Bash 窗口,输入如下命令:
hexo clean && hexo g && hexo d
如下图所示:
部署成功,到浏览器地址栏分别输入 GitHub 地址 和 Coding 地址,访问成功:
https://compassblog.github.io/
https://compassblog.coding.me/
有同志可能把手机屏幕点烂发现链接都没跳转,还以为我没部署成功,。其实是因为微信公众号文章内不支持这种外部链接而已,而链接加了颜色仅仅是为了区分而已,点击文章底部 “ 阅读原文 ”按钮即可访问。
延伸阅读:
- CodePlex 全面支持Subversion/TortoiseSVN
- 计算机程序的思维逻辑 (11) - 初识函数
- Android WebView 调试方法
- Python开发微信公众号后台(系列一)
- Consul最常用的命令和接口api
- webpack的Hot Module Replacement运行机制
- 如何使用Node.js编写命令工具——以vue-cli为例
- SpringBoot编写自定义的starter
- webpack3新特性简介
- Python机器学习算法入门之梯度下降法实现线性回归
- IronPython 2.0 beta 5
- node.js如何制作命令行工具(一)
- (28) 剖析包装类 (下) / 计算机程序的思维逻辑
- Linux进程监控工具Supervisor简易使用教程
- 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 数组属性和方法
- Flutter中Contrainer 组件的宽高限制分析
- 10张图带你深入理解Docker容器和镜像
- 手摸手教你撸一个微服务框架-关于服务端的处理
- 聊聊claudb的string command
- windows下安装nodejs
- 【Java面试总结】Java集合
- 《JavaScript 模式》读书笔记(8)— DOM和浏览器模式1
- 《JavaScript 模式》读书笔记(8)— DOM和浏览器模式2
- 5000字 | 24张图带你彻底理解21种并发锁
- JavaScript-变量
- Android应用安装卸载监控
- 细数这些年被困扰过的 TS 问题
- 将WordPress插件Elementor标签插入到WordPress模板文件以使用Elementor编辑
- WordPress自定义新建多区域widget小工具调用
- WordPress调用分类目录 及输出当前分类下的二级目录 和分类文章数量显示