目录

前言

一、安装Butterfly主题

二、将本地博客部署到GitHub服务器

三、将个人域名与GitHub绑定


前言

安装完Hexo框架后,自带的主题在thems文件夹下可以查看,应用后界面:

Hexo提供了290+主题,点击可前往官网访问:Hexo主题

我选择的主题是 Butterfly ,安装后的界面如下:

图源:Butterfly官方Github   我的个人博客:XJHui'S BLOG

一、安装Butterfly主题

1、可供选择的版本

注意:两个版本供使用者选择,我首次安装的是第二个开发版,虽是开发版但装完还没发现什么Bug,教程就以开发版为例。

2、命令行安装主题

sudo su //进入root账户

git clone -b dev https://github.com/jerryc127/hexo-theme-butterfly.git themes/Butterfly

安装成功:

注意:如果此过程报错,可能是git的问题,请翻看 上篇文章 或自行百度解决。

3、修改配置

说明:主题安装完成后并不会自动应用,要修改框架下的_config.yml配置文件。

①进入安装Hexo框架的文件夹(文件夹名称未必为blog,取决于安装的位置):

cd blog/

注意:查看blog文件夹中包含的文件是否与下图相同,否则代表进错文件夹了。

②修改配置文件:

vim _config.yml

错误:原因是未安装vim,,执行 apt install vim 后继续输入上面命令。

往下翻找到thems,将其后面的文字修改为Butterfly(与前面thems之间有一个空格)

注意:需要vim基础,用ubuntu先把基础的vim学好233333333。

4、将Butterfly的配置文件移动到source/_data下

说明:这样是为了让主题更平滑,Butterfly 使用了 data files特性(可乐不加冰),移动后平滑效果可能更好(个人猜测)。

mkdir source/_data //创建文件夹
cp themes/Butterfly/_config.yml source/_data/butterfly.yml //复制并重命名

注意:以后的配置修改都是基于butterfly.yml。

5、测试配置是否修改成功

hexo clean
hexo g //报错看错误1
hexo s //报错看错误2

浏览器输入localhost:4000查看主题是否应用成功

错误1:

解决方法:在 Butterfly主题官方GitHub主页 给出了解决方案

npm install cheerio@0.22.0 --save //如果使用cpnm可能更快

错误2:

解决方法:cyw1227(需要安装pug以及stylus的渲染器,安装速度有点慢耐心等待)

npm install --save hexo-renderer-jade hexo-generator-feed hexo-generator-sitemap hexo-browsersync hexo-generator-archive

安装成功:

注意:上图即为Butterfly原始样式,未对配置文件做任何修改。

二、将本地博客部署到GitHub服务器

说明:仅本地访问博客远远不能满足我们的需求,实现远程访问离不开将其部署到服务器上,服务器可以购买云服务器也可选用其它例如GitHub提供的免费服务器。

1、准备GitHub仓库

①新建仓库(如果你已经创建了该仓库请务必备份数据,因为仓库内原始数据会被覆盖,然后跳至第③步)

②输入新仓库信息

注意:填写的域名信息格式必须为:用户名.github.io 否则即使创建成功也不可使用。

③安装git插件

cnpm install --save hexo-deployer-git

注意:如果未安装cnpm会报错,可以用npm代替上面命令中的cnpm。

④修改配置文件

vim _config.yml 

翻到最底部:按照下图修改,repo填写自己的url

⑤部署到远端

hexo clean //依次执行这三个命令,不建议直接执行hexo d
hexo g
hexo d

错误1:

解决方法:

npm install --save hexo-deployer-git  

感谢:乔小乔jojo

错误2:原因:git未配置邮箱和名字

解决方法:

git config --global user.name "yourname"  //自己的用户名
git config --global user.email "youremail@163.com" //自己的邮箱

错误3:GitHub上未配置公钥

图源:没没没没没没没

解决方法:

ssh-keygen -C '你的邮箱账号@163.com' -t rsa //一路回车
vim ~/.ssh/id_rsa.pub //复制里面的密钥

注意:SSH key title 任意。感谢:王雨城

⑥推送完成

浏览器输入:https://用户名.github.io 即可访问。

错误:报错404

①如果未绑定个人域名,按照下图操作:

②已绑定个人域名,按照下图操作(亲测可行):

感谢:半缘青荇

三、将个人域名与GitHub绑定

说明:GitHub提供的域名太长,可以自己购买喜欢的域名与之绑定。阿里云购买的域名为例(XJH'S BLOG

2、进入 阿里云 依次点击:域名-》解析

3、添加两条记录,分别为:

添加完成后如下图:

4、进入GitHub,添加 CNAME 文件:

输入file名称和域名点击保存:

5、修改GitHub设置:

①进入项目的设置(如图):

②GitHub Pages下添加自己的域名:

感谢:Mr_XQ

就可以使用自己的域名远程访问搭建好的博客啦。

新手操作,不足请留言评论。

下一篇:短短1天我学会了如何修改Butterfly的配置文件

给博客使用Butterfly主题并部署到GitHub服务器的更多相关文章

  1. 在Github上面搭建Hexo博客(一):部署到Github

    什么是Hexo Hexo是一个基于Node.js的静态博客程序,可以方便的生成静态网页托管在Github和Heroku上.并且有很多人为其制作了很多优秀的主题(theme),你可以根据自己的喜好进行设 ...

  2. 博客圆美化主题推荐之Slience

    博客圆美化主题推荐之Slience 一.前言 本博客美化主题作者为:Esofar,本文仅在教导如何快速把该美化主题应用到自己的博客中,详细部署内容见Silence - 专注于阅读的博客园主题. 二.博 ...

  3. 快速导出jekyll博客文件进行上传部署

    快速导出jekyll博客文件进行上传部署 在使用markdown书写jekyll博客时,经常需要写一个头部信息用以让jekyll读取博文信息,这是一件比较麻烦的事,因此我使用HTML实现了一个快速导出 ...

  4. Hexo博客(Snail主题)搭建回顾概览

    Hexo博客(Snail主题)搭建回顾概览 笔者搭建博客地址:https://saltyfishyjk.github.io 目录 Hexo博客(Snail主题)搭建回顾概览 Part 0 前言 写作背 ...

  5. 【全网最全的博客美化系列教程】01.添加Github项目链接

    全网最全的博客美化系列教程相关文章目录 [全网最全的博客美化系列教程]01.添加Github项目链接 [全网最全的博客美化系列教程]02.添加QQ交谈链接 [全网最全的博客美化系列教程]03.给博客添 ...

  6. 5分钟搭建wordpress个人博客网站——宝塔傻瓜式部署,无坑系列,附赠主题和md插件[2021-12-31]

    一.前言 自从买了服务器,小编已经马不停蹄的学了两天服务搭建的知识,问了很多大佬,快速搭建自己的博客网站.有四种方式,我在这里全部分享给大家.自己已经搭建好,欢迎大家过来看一下,给你提供个思路哈! 小 ...

  7. 搭建github博客,hexo主题

    买个域名,多少钱的都有,看自己喜欢,可以去万网,ali嘛. 一般在windows,下载gitbash(配置公钥,全局用户名和email),node.js(不用配置). 新建github项目,添加公钥( ...

  8. Hexo 博客 之 腾讯云部署过程

    写在前面 Hexo 博客搭好了有差不多两周时间了,这期间走了很多弯路,跳了很多坑.一些坑自己 bing 到了答案,找到了解决方法,一些坑则是自己摸索出来的解决方法.现在准备写几篇关于搭建流程.搭建过程 ...

  9. 博客 | 基于Travis CI实现Hexo在Github和Coding的同步自动化部署

    文章目录 完成Hexo主题安装和配置 基于Travis CI实现同步部署 参考内容 相关链接 待补充 完成Hexo主题安装和配置 如果您还没有安装Hexo环境,请参考Hexo文档安装,也给出这样两篇博 ...

随机推荐

  1. poj1966枚举源汇点 求最小点割DInic

    Cable TV Network Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 4854   Accepted: 2241 ...

  2. DP+容斥 BZOJ1042

    1042: [HAOI2008]硬币购物 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2558  Solved: 1539[Submit][Stat ...

  3. 仙人掌图判定及求直径HDU3594 BZOJ1023

    https://wenku.baidu.com/view/ce296043192e45361066f575.html   //仙人掌图基础知识3个判定条件 http://blog.csdn.net/y ...

  4. 限制某个顶点度数的最小生成树 poj1639

    Picnic Planning Time Limit: 5000MS   Memory Limit: 10000K Total Submissions: 10642   Accepted: 3862 ...

  5. 蓝桥杯 试题 历届试题 对局匹配 DP解决

    问题描述 小明喜欢在一个围棋网站上找别人在线对弈.这个网站上所有注册用户都有一个积分,代表他的围棋水平. 小明发现网站的自动对局系统在匹配对手时,只会将积分差恰好是K的两名用户匹配在一起.如果两人分差 ...

  6. channelartlist标签的使用

    用来获取当前频道的下级栏目的内容列表标签 . type=“top”表示顶级栏目 ,typeid='top' 限制上级栏目ID:如果只要调用其中几个频道的内容可以用{dede:channelartlis ...

  7. JVM调优总结(六)-新一代的垃圾回收算法

    垃圾回收的瓶颈 传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限.但是他无法解决的一个问题,就是Full GC所带来的应用暂停.在一些对实时性要 ...

  8. Ant标签详解--基础操作

    Ant的一些核心概念: build.xml:构建文件是以XML 文件来描述的,默认构建文件名为build.xml.        project:每个构建文件包含一个工程. property:属性,一 ...

  9. Java IO(六) ObjectInputStream 和 ObjectOutputStream

    Java IO(六) ObjectInputStream 和 ObjectOutputStream 一.介绍 对于对象数据的处理,Java IO 提供了 ObjectInputStream 和 Obj ...

  10. PMP 冲!|项目整合管理

    0x00概述 项目管理包括识别.定义.组合.统一与协调各项目管理过程组的过程及项目管理活动.包括在各个项目冲突的目标与方案之间进行权衡和选择. 整合管理包括进行如下选择: 资源分配: 平衡竞争性需求: ...