前言

Hexo 作为一款静态博客网站框架,是新手搭建属于自己的博客网站的不二之选。但是如果你只是按照相关教程快速地完成了一个网站的搭建,搭建完成时获得的成就感很快就会消散。了解搭建过程中的相关知识和原理,并用于提升自己的知识储备,才能让这种获得感长久,这篇文章的意义就在于此。

本文首发于 正切橙的博客,更多详细信息请点击 这里,转载请注明出处。


一、Hexo 是什么

Hexo 是一款基于 Node.js 的静态博客网站框架,依赖少且易于安装使用,可以很方便并且快速地生成静态网页,然后托管在 GitHub PagesNetlifyVercel 等上搭建个人博客网站。Hexo 的作者来自台湾,对于中文的支持很好,阅读相关文档也很方便。

Hexo 中文官网

1.什么是静态网站

既然有静态网站,与之相对的也有动态网站。静态网站往往没有数据库和后台,网站代码一经发布到网站服务器上后内容便不可修改,只能通过重新长传更改后的网站代码来更新网站。而动态网站不同,它可以根据用户的要求和选择而动态地改变网页内容,并且自动更新网站,还能通过后台实时监控网站的情况并作出响应。

2.为什么选择静态网站

动态网站的交互性和功能都很强大,但是搭建的过程很复杂,需要有一定的代码基础,还要了解数据库等相关知识,它往往是一些公司和企业的官网。对于只想搭建博客网站的个人来说,学习成本太高,所以选择静态网站,它上手简单,对于个人网站来说绰绰有余,同时维护成本也很低。

3.为什么选择 Hexo

虽然搭建静态网站相对于动态网站已经简单很多,但是还是要有 htmlcssjs 等前端开发的基础,而 Hexo 的出现又降低门槛,它可以把写好的 Markdown 文档渲染生成网页,你要做的只是配置好 Hexo 就行了。

Hexo 类似的工具还有 JekyllHugojekyll 是 GitHub 的亲儿子,而 Hugo 是采用 Go 语言编写的,但是从使用人数和博客主题数量来看,Hexo 更胜一筹,网上关于 Hexo 的介绍也更多,遇到问题也更好解决。

二、Markdown 是什么

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或 HTML)文档,简单来说,就是以 Markdown 格式编写的文档(.md 结尾)可以在特定工具下转换为 XHTML(或 HTML,即 .html 结尾)的文档,从而简化写复杂的 XHTML(或 HTML) 代码过程。

1.为什么要学 Markdown

你在 Hexo 上写的所有文章都是 Markdown 格式的,Hexo 可以把你写的这些 Markdown 文档(.md 结尾)批量转换成 XHTML(或 HTML,即 .html 结尾)的文档,然后渲染组成页面,再把页面组织构成网站。

2.怎么学 Markdown

Markdown 作为轻量级标记语言,学习起来难度较小,了解 Markdown 基本语法后多写写就能熟练掌握,可以查看 菜鸟教程 或者 马克飞象 的例子,网上其他的相关教程也很多,就不一一列举了。当你熟悉之后,进阶的话可以在 Markdown 文档中插入 HTML 语句实现更多功能和样式。

Markdown 编辑器的话使用 VSCode 或者 TyporaMarkText 等都行,甚至记事本也行(不过无法预览)。

三、如何使用 Hexo

1.前期准备

  • Node.js
  • npm
  • Git

以前 js 只能运行在浏览器中,Node.js 出现之后,不管是服务器上,还是我们自己的的笔记本上,只要安装了 Node.js 就可以运行 js 代码。

Node.js 中文官网

npm 的全称是 Node Package Manager,是一个 Node.js 的包管理和分发工具,可以使用它安装和管理官方以及别人开发好的模块,并应用到你的项目中。

npm 官网

Git 是一个分布式的版本控制软件,用于记录某个项目中各种文件内容的变动。 而 GitHub 是一个基于 Git 的远程文件托管平台,你可以在上面建立仓库存储你的项目,并且通过 Git 记录你的项目内容变动。

Git 官网

2.安装 Node.js

打开 Node.js 官网,找到 下载,选择 长期维护版 下载,下载完成后双击下载的 .msi 文件进行安装,可以更改安装位置到其他盘,其他选项默认即可,Node.js 安装完成后自带 npm

安装完成后,在 cmdpowershell 或者 Windows Terminal 等终端中输入

node -v

如果输出版本号即为安装成功

也可以查看 npm 版本

npm -v

3.安装 Git

打开 Git 官网,找到 Latest source Release,点击 Download for Windows,下载 64-bit 的版本,下载完成后,双击进行安装,安装时的勾选默认即可(Git 老玩家的话按自己需求选择)。

Git 在记录项目内容修改时,可以附加修改者的姓名和邮箱信息,这需要自己设定。安装完成后,在桌面右键呼出菜单,选择 Git Bash Here,输入

git config --global user.name "yourname"
git config --global user.email "youremail@xxx.com"

查看修改后的用户信息

git config --list

4.安装 Hexo

查看 Hexo 中文官网 发现,只需要一个命令就可以安装 Hexo,它是通过 npm 安装的

由于 npm 的源服务器在国外,速度慢,可以使用 阿里云 npm 镜像站,终端输入

npm config set registry https://registry.npmmirror.com

查看换源是否成功

npm config get registry

镜像源配置好就可以安装 Hexo 了,输入

npm install hexo-cli -g

-g 表示全局安装某模块,会写入环境变量,可以在终端直接输入该模块的指令进行相应操作,不加则会安装在终端打开文件夹的 node_modules 目录中,只在当前项目中使用

验证安装是否成功

hexo -v

输出版本号和其他基本信息即表明安装成功

5.初始化网站

可以查看 Hexo 官方文档 或者看我下面的介绍

任选位置新建一个空文件夹,初始化该文件夹

hexo init

按住 Shift 不放并右击此文件夹,选择 在此处打开 Powershell 窗口 可以打开 powershell,或者进入这个空文件夹,在地址栏输入 cmd 可以打开 cmd

等待完成,然后更新 npm 包的依赖

npm install

6.本地测试

Hexo 初始化完成后会有一个默认主题 landscape

依次输入以下指令,在本地运行

hexo clean
# 清除缓存,可用简略写法 hexo cl
hexo generate
# 生成静态页面,可用简略写法 hexo g
hexo server
# 本地运行,可用简略写法 hexo s

按住 Ctrl 并点击终端输出的 http://localhost:4000 链接可以跳转浏览器打开测试页面,或者在浏览器地址栏输入 http://localhost:4000 也可以打开测试页面

4000 表示本地端口号为 4000,也可以使用 -p 参数指定端口,例如:hexo s -p 8080 表示在 8080 端口测试

在终端按 CtrlC 可以中止运行

如果已经熟练 Hexo 的话,可以只使用一条测试运行指令

  • cmd
hexo cl && hexo g && hexo s
  • powershell
hexo cl ; hexo g ; hexo s

从零开始的 Hexo 生活(二)主题配置篇

更新中 ······


从零开始的 Hexo 生活(一)入门安装篇的更多相关文章

  1. docker入门-安装篇

    一.docker介绍 1:docker官网 www.docker.com 2:github  https://github.com/docker/docker.github.io 3:开源的容器引擎, ...

  2. Percona XtraDB Cluster简易入门 - 安装篇

    说明 Percona XtraDB Cluster(简称PXC),是由percona公司推出的mysql集群解决方案.特点是每个节点都能进行读写,且都保存全量的数据.也就是说在任何一个节点进行写入操作 ...

  3. 从零开始学习jQuery (一) 开天辟地入门篇

    一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章是入门第一篇, 主要是简单介绍jQuer ...

  4. k8s入门系列之扩展组件(一)DNS安装篇

    DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...

  5. ElasticSearch入门 第一篇:Windows下安装ElasticSearch

    这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 E ...

  6. 轻量级HTTP服务器Nginx(入门与安装篇)

    轻量级HTTP服务器Nginx(入门篇)   文章来源于南非蚂蚁   一.什么是Nginx 相信很多读者都对Apache非常熟悉,与Apache类似,Nginx是一款高性能的HTTP和反向代理服务器软 ...

  7. 从零开始制作 Hexo 主题

    原文地址:从零开始制作 Hexo 主题 · Ahonn 写在前面 本文将会从零开始开发一个简单的博客主题.样式主要参考 Hexo theme 中的 Noise 主题. 开始之前你需要了解: 模板引擎  ...

  8. 从零开始的微信小程序入门教程(一)

    之前说要和同事一起开发个微信小程序项目,现在也在界面设计,功能定位等需求上开始实施了.所以在还未正式写项目前,打算在空闲时间学习下小程序.本意是在学习过程中结合实践整理出一个较为入门且不是很厚的教程, ...

  9. JavaMail入门第一篇 邮件简介及API概述

    现如今,电子邮件在我们的生活当中扮演着越来越重要的角色,我们每个人几乎都会与其打交道(至少时不时我们都会接收到莫名其妙的垃圾邮件),在工作中,使用邮件进行交流沟通,可以使我们的工作有迹可循,也显的较为 ...

随机推荐

  1. OCCT基础

    基础 构成总览 Root类 基本类型,如布尔,字符,整数或实数 安全处理动态创建的对象,确保自动删除未引用的对象 可配置的内存管理器,提高了应用程序的性能 包含运行时类型信息机制,有助于创建复杂应用 ...

  2. ArcMap操作随记(6)

    1.上流汇流区 [填洼]→[流向]→[分水岭] 2.输入坐标进行移动,也就是精确移动 [移动]工具(在自定义中,其中的[旋转]工具也有类似效果) 3.找最近的要素(矢量) [近邻分析]→[汇总] 4. ...

  3. NET 中反射的用法

    1.   反射的学习 A.反射的定义 B.反射举例 namespace Com.Meteor.Interface { public interface IHelper { void Query(); ...

  4. Bert不完全手册3. Bert训练策略优化!RoBERTa & SpanBERT

    之前看过一条评论说Bert提出了很好的双向语言模型的预训练以及下游迁移的框架,但是它提出的各种训练方式槽点较多,或多或少都有优化的空间.这一章就训练方案的改良,我们来聊聊RoBERTa和SpanBER ...

  5. 阿里云pypi软件包预警

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 背景 Python库的官方仓库pypi允许开发者自由上传软件包,这会导致某些攻击者利用这点构造恶意包进行供应链攻击,在用户安装包或者引入包时触发恶意 ...

  6. Linux下编译安装mysql数据库服务

    以下是用putty工具远程登录到服务器,在命令行下面操作: Cmake工具下载地址:http://ftp.lfs-matrix.net/pub/blfs/conglomeration/cmake/ M ...

  7. web服务器-nginx负载均衡

    web服务器-nginx负载均衡 一 负载均衡的作用 负载均衡: 分摊到多个操作单元上进行执行,和它的英文名称很匹配.就是我们需要一个调度者,保证所有后端服务器都将性能充分发挥,从而保持服务器集群的整 ...

  8. 使用gdb

    1.设置断点,在源程序第16 行处 (gdb)break 16 Breakpoint 1 at 0x8048496: file tst.c, line 16. 2.设置断点,在函数func()入口处. ...

  9. 74CMS 3.0任意文件写入漏洞

    一. 启动环境 1.双击运行桌面phpstudy.exe软件 2.点击启动按钮,启动服务器环境 二.代码审计 1.双击启动桌面Seay源代码审计系统软件 2.因为74CMS3.0源代码编辑使用GBK编 ...

  10. Rsync未授权访问

    1.漏洞名称 Rsync 未授权访问漏洞 2.漏洞原理 rsync是Linux下一款数据备份工具,支持通过rsync协议.ssh协议进行远程文件传输. 其中rsync协议默认监听873端口,如果目标开 ...