使用Hexo搭建个人博客(一)-简介
什么是Hexo
Hexo是一个简单地、轻量地、基于Node.js的一个静态博客框架,可以方便的生成静态网页托管在github、coding上,或者存放在自己购买的云主机上。
Hexo的作者是一名台湾的大学生@tommy351 ,引用Hexo作者 @tommy351 的话:
快速、简单且功能强大的 Node.js 博客框架。
A fast, simple & powerful blog framework, powered by node.js.
其Gihub的地址为:https://github.com/hexojs/hexo
Hexo的官网地址为:https://hexo.io/zh-cn
Hexo的特点:
1、依赖少(仅依赖node),易于安装。
2、台湾人写的,不用担心对中文支持不好。
3、风一般的速度,Hexo基于Node.js,使用 Markdown(或其他渲染引擎)解析文章,支持多进程,利用靓丽的主题,几百篇文章也可以秒生成静态网页。
4、流畅的撰写,支持GitHub Flavored Markdown和所有Octopress的插件。
5、扩展性,Hexo支持EJS、Swig和Stylus。通过插件支持Haml、Jade和Less等。
为什么使用静态博客
对于个人网站来说,没有比博客更合适的形式了。在博客中,文章才是最主要的,一切都显得主次分明,干净利落。相比之下,论坛中主题和回复鱼龙混杂,阅读体验非常差。
而静态博客,其静态网页部署方便,浏览速度快。静态博客编译之后是纯html页面,优点就是支持它的环境十分好找,例如github、coding、七牛云存储等站点都支持静态页面托管,自然是我们的首选了。
但是静态博客并非没有缺点。动态博客更新文章时,脚本是不变的,只需要更新数据库。静态博客要频繁改动文件,不支持增量式上传的东西,比如ftp,就难于管理。此外,还要十分熟悉git各种命令,才能部署页面。
有很多静态网页生成器都可以生成静态页面。比如:
Ruby
Jekyll(github 默认pages 引擎)
Octopress(兼容jekyll)
Python
Hyde Jekyll的Python语言实现版本
Cyrax 使用Jinja2模板引擎的生成器
PHP
Phrozn PHP语言实现的静态网站
Node.js
Hexo
那么Hexo是如何生成静态页面,并在gitpages展示的呢?
如果要做博客,Wordpress 的思路是 php + MySql,既通过动态页面的形式。
而静态页面的网站,只能使用 html 拼合成博客。
因此首先Hexo自己本地文件夹的 source 就是数据库,以.md(markdown) 格式存储文章,theme 文件夹是主题文件,以 .yml 等类型,决定了页面如何“组装”每次运行hexo g 命令,hexo(node.js程序)会遍历你的 source 目录,建立索引,根据你theme文件夹的主题生成页面到 public 文件夹。这时 public 文件夹就是一个纯由 html javascript css 等内容制作的博客,而这些恰好能在 gitpages识别最后 hexo d 将 public 文件夹的内容复制到临时目录,以 git 方式 push 到 github 的指定项目的指定分支,由 github 进行显示。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!