Github Page

github page是由用户编写的托管在github上的静态网页,为了搭建一个个人博客,我们可以租用一个云服务器然后部署我们的博客项目,常见的比如wordpress,像wp这样的博客系统需要用到服务器后台的数据库,所以是动态的,github page相对于云服务器来说,不能提供数据库服务,所以资源都是静态存放在github上的,但是是免费的,而且速度也还可以,相对来说很稳定。

Hexo

什么是Hexo

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。简单来说Hexo就是一款适合用在github page的博客框架。

安装步骤

Git

Git是分布式版本控制系统,我们需要用git上传我们的博客代码。

Nodejs

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,Hexo基于Nodejs

npm

NPM是随同NodeJS一起安装的包管理工具,用来下载别人编写的第三方包。

换源

因为nodejs是国外的技术,所以下载速度在次元壁的限制下会很慢所以我们可以换成国内的淘宝镜像

npm config set registry https://registry.npm.taobao.org

查看是否换源成功

npm config get registry

Hexo

新建文件夹用于存放博客文件,然后cd到该目录。

npm install -g hexo-cli

安装完后用hexo -v 查看版本确保安装成功,之后初始化

hexo init myblog #myblog是自己取的名字随你

进入myblog,安装依赖

npm install

打开myblog文件夹目录结构如下

  • node_modules: 依赖
  • scaffolds:生成文章的一些模板
  • source:用来存放你的文章
  • themes:主题
  • public:运行之后会生成,博客的静态文件
  • 以及一些配置文件
hexo g  # Generate static files
hexo server



打开hexo服务在浏览器打开http://localhost:4000就能看到博客了



创建新仓库 命名为用户名+.github.io例如ljshllw.github.io

创建ssh

git config --global user.name "yourname"
git config --global user.email "youremail"
ssh-keygen -t rsa -C "youremail"

回车直到结束,ssh,简单来讲,就是一个秘钥,其中,id_rsa是你这台电脑的私人秘钥,不能给别人看的,id_rsa.pub是公共秘钥,可以随便给别人看。把这个公钥放在GitHub上,这样当你链接GitHub自己的账户时,它就会根据公钥匹配你的私钥,当能够相互匹配时,才能够顺利的通过git上传你的文件到GitHub

登陆github找到setting添加SSH key 将刚才生成的id_rsa.pub(文件所在地址生成在ssh-keygen命令的时候有显示查看gitbash记录即可得知)文件里的内容粘上去



gitbash中输入如下命令查看是否成功

ssh -T git@github.com

关联

修改_config.yml(你的博客目录下)文件,下拉到底部

deploy:
type: git
repo: https://github.com/name/name.github.io.git #name为你的github名称
branch: master

安装deploy-git

npm install hexo-deployer-git --save

Hexo素质三连完成发布

hexo clean    # 清理
hexo generate # 生成
hexo deploy # 部署

绑定域名

买域名

国内的可以去阿里云旗下万网买,缺点是需要认证,国外的话可以去GoDaddy买,不用实名认证,前提是不部署在国内厂商的云服务器,政策要求都需要认证(十分之坑),.top是新出的中国顶级域名价格也很便宜买个玩玩也不错。我这里是在阿里云买的,因为方便,bearw.top <熊网?熊王> ,买了很久了忘了价估计也就是20块钱一年,长度短有意义的域名肯定相对就比较贵成千上万的我只敢看看,长度很长的个位数就能拿下。

解析

我这里用阿里云的做演示,登陆阿里云控制台,选择域名选项,添加两条CNAME解析

github设置

登陆github选择gitpage仓库,选择settings,下滑找到Github PagesCustom domain里填入你的域名,然后点击Save,稍等一会就好了,之后会默认转成HTTPSSSL证书来自Let's Encrypt

个性化

Hexo 支持主题设置,可以自己选择安装主题,可以配置的选项也很多,对于新手很友好,熟悉前端的小胖友们更是可以自行定制属于自己的博客。

bearw.top点我!

也是因为今天突然想起来之前买了域名还没用,就起兴弄个这个玩玩,顺便分享给大家,如果有兴趣可以自行摸索。

Github pages博客搭建与域名绑定的更多相关文章

  1. github文件上传及github pages博客搭建教程

    一.与github建立连接 1.安装node.js和git 2.桌面新建文件夹[github],右键“git bash here” 3.注册github账号,新建仓库“new repository”, ...

  2. 一站式搭建 GitHub Pages 博客 (一)

    本文将详细讲解如何快速搭建 GitHub Pages 博客页面 关于博客主题,博客信息更改,上传文章等将会在 一站式搭建 GitHub Pages 博客 (二) 中进行详细讲解 准备阶段 注册 Git ...

  3. GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置

    GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置 前言 此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客.poem_of_ ...

  4. 使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源(二)

    之前写过一篇 使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源,在那之后,又陆续想到并实施了几点利用 jsDelivr 进一步加速静态资源加载的措施,新起一篇作为记录和分享. ...

  5. Hexo+Github个人博客搭建 | 实战经验分享

    概述 第一次尝试搭建属于自己的博客,并且成功了,非常开心. 很久之前就想搭建一个博客,可是也一直没有行动,最近在逛B站的时候发现一个up主(CodeSheep)的一个视频 <手把手教你从0开始搭 ...

  6. Github相册博客搭建

    前一段时间我看见一个问答,大概意思就是程序员都是怎么用自己的专业技能逗女朋友或表白的. 看了很多,有写定时关机脚本恶搞的,也有简单写个html展示的,其中最著名的就是几年前有个人写了个网页记录他们在一 ...

  7. github page博客里添加多说评论插件

    本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 由于现在我这个博客原来用的是DISQUS评论插件,那全是全球 ...

  8. github个人博客绑定单独阿里域名指南

    详情:http://www.liu12fei08fei.top/ github个人博客绑定单独阿里域名指南 起源 禁止微信重拍版 给github pages绑定域名 获取github pages的ip ...

  9. 利用GitHub Pages + jekyll快速搭建个人博客

    前言 想搭建自己博客很久了(虽然搭了也不见得能产出多频繁). 最初萌生想写自己博客的想法,想象中,是自己一行一行码出来的成品,对众多快速构建+模板式搭建不屑一顾,也是那段时间给闲的,从前后端选型.数据 ...

随机推荐

  1. 最新最全最详细的MacOS 10.14 Mojave黑苹果安装教程

    图文教程知乎地址:点击打开链接 视频教程B站地址:点击打开链接 微信公众号 地 址:点击打开链接 准备工作(工具包及镜像在后边) 一个8G以上的U盘(有的U盘标的是8G,实际只有7.X,实际容量小于7 ...

  2. oracle 批处理 bulk collect 带来的性能优势

    create table -- drop table tmp_20190706_220000-- truncate table tmp_20190706_220000 create table tmp ...

  3. linux c(一)Helloworld

    终端的屏幕上输入命令如下: 使用vi helloworld.c打开helloworld.c文件,写下如下代码:

  4. JS-模拟printf

    function printf(){ var args = [].slice.call(arguments), fmt = args.shift(), args_index = 0; ///%(填充的 ...

  5. upc组队赛4 Go Latin

    Go Latin 题目描述 There are English words that you want to translate them into pseudo-Latin. To change a ...

  6. python获取Linux发行版名称

    我必须从Python脚本中获取Linux发行版名称.dist平台模块中有一个方法: import platform platform.dist() 但在我的Arch Linux下它返回: >&g ...

  7. [轉]sendpage漏洞分析 CVE-2009-2692

    之前看了<新爆内核高危漏洞sock_sendpage的利用分析的讨论 >这篇帖子,在九贱兄和诸位CUer的指引下,大致弄清了整个漏洞的始末.现与大家分享(引用自我的空间 ).有什么不足之处 ...

  8. java虚拟机规范(se8)——java虚拟机结构(六)

    2.11 指令集简介 java虚拟机指令由一个字节的操作码,接着时0个或多个操作数组成,操作码描述了执行的操作,操作数提供了操作所需的参数或者数据.许多指令没有操作数只包含一个操作码. 如果忽略异常处 ...

  9. Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: ERR invalid longitude,latitude pair 111.110000,111.230000

    io.lettuce.core.RedisCommandExecutionException: ERR invalid longitude,latitude pair 111.110000,111.2 ...

  10. SQL中的DDL、DML、DCL、TCL

    1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema ...