JERRY-Hexo-GitHub

《JERRY Hexo & GitHub 静态网站搭建说明》

原创内容,转载请注明出处!

一、前言

1.1 什么是 Hexo?

一个基于 Node.js 设计的快速、简洁且高效的博客框架

  • 超快速度
  • 支持 Markdown
  • 一键部署
  • 插件和可扩展性
  • 免费开源

1.2 什么是 GitHub?

一个面向开源及私有软件项目的托管平台,因为只支持 Git 作为唯一的版本库格式,故名 GitHub

  • 全球最活跃开源社区
  • 开源社交平台
  • 企业项目管理平台

1.3 什么是静态网站?

通俗的讲静态网站指:只有 前端 没有 后端 的网站,静态网站的所有页面内容在没有被修改的前提下都是固定不变的

适用于博客、固定页面展示等网站。

1.4 Hexo 与 GitHub 搭配建站的优缺点

(1)优点

  • 简单稳定
  • 开源免费
  • 社区活跃利于交流

(2)缺点:

  • 国内访问速度慢
  • 不支持动态网站搭建

二、安装 Git

2.1 什么是 Git?

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目

使用 GitHub 必须有 Git。

2.2 Git 的下载安装与配置

(1)下载安装

Git官网

选择对应系统版本下载,安装默认下一步即可。

(2)配置

打开终端键入以下命令:

$ git --version

# 查看 git 版本号
# 若成功识别即为 git 安装成功
$ git config --global user.name "xxx"
$ git config --global user.email xxx@xxx.com # 配置个人的用户名称和电子邮件地址
$ git config --list

# ...
# user.name=xxx
# user.email=xxx@xxx.com # 检查已有的配置信息
# 若配置信息中出现正确用户名及邮箱即为配置成功

三、安装 Node.js

3.1 什么是 Node.js?

一个基于 Chrome V8 引擎的 JavaScript 运行环境,使用了一个事件驱动 、非阻塞式 I/O 模型,让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与 PHPPythonPerlRuby 等服务端语言平起平坐的 脚本语言

3.2 Node.js 的下载安装与配置

Node.js官网

选择对应系统的长期支持版下载,安装默认下一步即可。

安装完成,打开终端键入以下命令:

$ node -v

# 查看 Node.js 版本
$ npm -v

# 查看 npm 包管理器版本

若以上两个命令都成功识别,那么 Node.js 便安装成功。

$ npm install -g cnpm --registry=https://registry.npm.taobao.org

# 利用 npm 下载国内淘宝镜像 cnpm
$ cnpm -v

# 查看 cnpm 版本
# 若以上命令成功识别,那么 cnpm 便安装成功

什么是 npm 和 cnpm ?

  • npm (node package manager):Node.js 的包管理器,用于 node 插件管理(包括安装、卸载、管理依赖等)。

  • cnpm:因为 npm 安装插件是从国外服务器下载,受网络的影响比较大,可能会出现异常,所以乐于分享的淘宝团队解决了这事。来自官网:“这是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步”。

四、安装 Hexo

4.1 Hexo 的下载安装与配置

下载安装:

可以参考Hexo官网

打开终端键入以下命令:

$ cnpm install hexo-cli -g

# 等待一会,安装完毕
$ hexo -v

# 查看 hexo 版本
# 若以上命令成功识别,那么 hexo 便安装成功

五、搭建静态网站

5.1 新建一个网站

$ hexo init [folder]

# 如果没有设置 folder,Hexo 默认在当前的文件夹建立网站

5.2 生成静态文件

$ hexo generate

# 该命令可以简写为 $ hexo g

5.3 启动服务器

$ hexo server

# 该命令可以简写为 $ hexo s
# 默认情况下,访问端口为:http://localhost:4000/
# 在浏览器中访问 http://localhost:4000/ 即可打开本地搭建好的网站

5.4 新建一篇文章

$ hexo new <title>

# 如果标题包含空格的话,请使用引号括起来 $ hexo new "first blog"
# 生成的 Markdown 文章放在 source 内的 _posts 下

六、利用 GitHub 部署网站

6.1 注册用户

GitHub官网

点击右上角注册即可。

6.2 创建同名仓库

  • 点击右上的 +,选择 New repository 新建一个仓库

  • 仓库名称设为 用户名.github.io

  • 仓库类型为 Public 公共类型

  • 复制仓库 HTTPS URL

6.3 更改 Hexo 配置文件

修改根目录 _config.yml 内的 deploy

# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: 'git'
repo: https://github.com/用户名/用户名.github.io.git # HTTPS URL
branch: master

6.4 安装 hexo - git 部署工具

在 Hexo 博客根目录下,打开终端键入:

$ cnpm install hexo-deployer-git --save

# 安装 hexo-deployer-git 工具

6.5 远程部署到 GitHub Pages 服务器

$ hexo deploy

# 该命令可以简写为 $ hexo d

部署成功后即使用 https://用户名.github.io/ 在浏览器中访问网站。

七、结束语

7.1 美化 Hexo 网站

Hexo 支持主题自定义,并且有一个活跃的 主题社区

切换主题方法:下载主题到 themes 文件夹内并修改根目录 _config.yml 内的 theme 设定,即可切换主题。

修改配置主题请查阅相应主题的文档。

目前比较热门的几个主题:

7.2 使用 Hexo 插件

Hexo 是一个支持插件的可扩展框架,具体插件类型及安装方法请前往 Hexo 官网查看 或在搜索引擎求助。

7.3 帮助文档

Hexo 提供了全面的 Hexo 使用文档(中英文版)及 API 文档,在使用及开发优化 Hexo 的过程中,建议以官方文档为基准。

【与我联系 - 周吉瑞(JERRY)】

《JERRY Hexo & GitHub 静态网站搭建说明》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. bugKu变量1

    重点:两个$$,这暗示着第二个$变量的值,作为第一个$的名称. 而且代码审计之后,发现只含有字母. 又暗示在变量中,那么猜想是在全局变量中,而php中全局变量是$GLOBALS.

  2. leetcode TOP100 比特位计数

    338. 比特位计数 题目描述: `给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回. 示例 1: 输入: 2 输出: ...

  3. 判断字符串是否为ip地址----python

    def isIp(ip_str): flag = True if '.' not in ip_str: return False if ip_str.count('.')!=3 : return Fa ...

  4. 利用PE破解系统密码

    1.利用pe制作工具制作pe启动盘或者ios镜像 2.制作好后,在虚拟机设置里面加载镜像 3. 3.开启时选择打开电源进入固件 4.开启后依次选择:Boot--->CD-ROM Drive并按F ...

  5. 海亮NOIP集训-每日总结

    [总结] xzh 2021暑假每日结 2021年7月12日 内容主题 DP,树型DP(讲解人:王修涵) 考场题目总结 T1: 考场简单想法: 算出两两点间距离,贪心,所用时间 \(1.5h\) 左右. ...

  6. datax的安装和使用(windows)

    github官方文档和项目:https://github.com/alibaba/DataX 下载后在windows环境下是可以直接用python编译执行的,但从github上下载的版本只支持pyth ...

  7. svo论文随手记

    论文链接:http://rpg.ifi.uzh.ch/docs/ICRA14_Forster.pdf 论文提出了一种半直接单目视觉里程计,在精确性.鲁棒性和速度方面都有较大的优势.将基于特征的方法(包 ...

  8. Hive——基本DDL语句

    Hive--基本DDL语句 DDL:Data Definition Language(数据定义语言,与关系型数据库相似) 官方手册:https://cwiki.apache.org/confluenc ...

  9. Python高阶之多线程锁机制

    '''1.多进程的优势:为了同步完成多项任务,通过提高资源使用效率来提高系统的效率.2.查看线程数:threading.enumerate()函数便可以看到当前线程的数量.3.查看当前线程的名字:th ...

  10. Postman进行webservices接口测试

    1.接口地址 webservices是什么? 更多webservices接口地址访问地址:http://www.webxml.com.cn/zh_cn/web_services.aspx webser ...