《JERRY Hexo & GitHub 静态网站搭建说明》
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)下载安装
选择对应系统版本下载,安装默认下一步即可。
(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 成为与 PHP、Python、Perl、Ruby 等服务端语言平起平坐的 脚本语言。
3.2 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 的下载安装与配置
下载安装:
打开终端键入以下命令:
$ 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 注册用户
点击右上角注册即可。
6.2 创建同名仓库
点击右上的
+,选择New repository新建一个仓库仓库名称设为
用户名.github.io仓库类型为
Public公共类型复制仓库
HTTPSURL
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)】
QQ:1846334075
微信:zhoujirui54
邮箱:www.zjr1846334075@foxmail.com
《JERRY Hexo & GitHub 静态网站搭建说明》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- Min25 筛与 Powerful Numbers
Min25 筛与 Powerful Numbers Min25 筛 大喊一声 Min25 NB!!! 这是一个非常神奇的东西,用于求更加普遍的积性函数的前缀和. 比如我们要求 \(\sum_{i=1} ...
- VisualEffectGraph基础操作 --创建VEG项目步骤讲解
一:建立VEG项目步骤 首先打开Unity Hub, 使用unity2020.1 新建项目(本技术博客,默认使用unity2020.1 版本演示),选择HDRP 高清渲染管线,确定项目目录与名称. ...
- 2021.07.21 NPCBOT增加人类的SS和74
#ssinsert into `creature_template_npcbot_appearance`(`entry`,`name*`,`gender`,`skin`,`face`,`hair`,` ...
- 【有奖互动】HMS Core. Sparkle游戏应用创新沙龙,诚邀您参与
活动简介 随着互联网基础设施的完善和"宅经济"效应凸显,游戏行业逆势上扬,迎来巨大消费市场.同时,用户需求愈加多样化,如何进一步创新和技术升级.提升核心竞争力已成为游戏开发与运营的 ...
- Scala学习——操作外部数据
scala操作外部数据 一.scala读取文件及网络数据 package top.ruandb.scala.Course08 import scala.io.Source object FileApp ...
- P5042 丢失的题面
P5042 丢失的题面 顺序:10 - 1 - 7 - 8 - 9 - 4 - 5 - 6 - 2 - 3 Point 10 读入,特判,输出. 读入的英文意思是让选手输出自己的程序本身,这个题的确存 ...
- POJ3048
素数筛,数据范围不大,直接暴力筛. 坑:有个数据是 1 1,答案是1.差点没把我卡去世. 我的三观哪去了. #include<iostream> #include<cstdio> ...
- 【NOIP2007】Hanoi双塔问题
题目描述 给定A.B.C三根足够长的细柱,在A柱上放有2n个中间有孔的圆盘,共有n个不同的尺寸,每个尺寸都有两个相同的圆盘,注意这两个圆盘是不加区分的(下图为n=3的情形). 现要将这些圆盘移到C柱上 ...
- vue源码解析之observe
一. vue文档中有"由于 JavaScript 的限制,Vue 不能检测以下数组的变动",是否真是由于JavaScript的限制,还是出于其他原因考虑 当你利用索引直接设置一个数 ...
- GoogleTest死亡测试的跨平台BUG
最近工作用到了GoogleTest来作单元测试,但是死亡测试的ASSERT_DEATH语句一直跑不通. GoogleTest会启动子进程来运行代码,并捕捉子进程的错误消息,这就是所谓的"死亡 ...