Hexo+Github搭建静态博客全攻略
1. 为什么选择HexoGithub搭建个人博客十年前我第一次接触个人博客时用的还是WordPress。当时光是配置服务器环境就折腾了整整三天更别提后续的维护成本了。直到2015年发现Hexo这个静态博客框架配合Github Pages的免费托管服务我才真正找到了个人博客的完美解决方案。Hexo基于Node.js开发使用Markdown编写文章通过简单的命令就能生成静态网页。Github Pages则提供了免费的托管服务不仅支持自定义域名还能自动启用HTTPS加密。这个组合最大的优势在于完全免费除非你需要私有仓库无需服务器运维版本控制天然集成访问速度有保障Github的CDN覆盖全球我自己的技术博客示例域名blog.example.com已经稳定运行7年经历过多次主题更换和内容迁移这个技术栈始终保持着零宕机记录。下面我就详细拆解整个搭建过程包括几个主流主题的配置技巧和SEO优化经验。2. 环境准备与基础配置2.1 开发环境搭建首先需要安装Node.js环境建议使用LTS版本当前是18.x。Windows用户可以直接下载安装包Mac用户推荐通过Homebrew安装brew install node安装完成后检查版本我的环境示例node -v # v18.12.1 npm -v # 8.19.2接下来安装Hexo命令行工具npm install -g hexo-cli注意如果遇到权限问题可以在命令前加sudo或者按照官方文档配置npm的全局安装目录2.2 初始化博客项目创建一个新目录并初始化Hexo项目mkdir my-blog cd my-blog hexo init npm install目录结构说明. ├── _config.yml # 全局配置文件 ├── package.json # 依赖管理 ├── scaffolds/ # 模板文件 ├── source/ # 文章和静态资源 │ └── _posts/ # Markdown文章存放处 └── themes/ # 主题目录初始化的项目已经包含一个Hello World文章可以通过以下命令本地预览hexo server访问 http://localhost:4000 就能看到默认的Landscape主题效果。3. 主题定制与深度配置3.1 主题安装与切换Hexo有数百个开源主题我测试过二十余款后推荐这三个生产级选择Butterfly当前使用中安装npm install hexo-theme-butterfly特点功能全面支持暗黑模式文档完善NexT用户量最大安装npm install hexo-theme-next特点极简设计插件生态丰富Fluid适合技术文档安装npm install hexo-theme-fluid特点响应式布局搜索功能强大以Butterfly为例安装后需要在_config.yml中启用theme: butterfly3.2 主题配置实战技巧每个主题都有自己的配置文件通常位于themes/[theme-name]/_config.yml建议复制一份到博客根目录并重命名为_config.[theme-name].yml这样可以避免主题更新时配置丢失。几个关键配置项示例# 网站信息 title: 我的技术博客 subtitle: 记录开发中的点点滴滴 description: 前端开发 | Node.js | 性能优化 keywords: 技术博客,前端开发,JavaScript author: 你的名字 language: zh-CN # 菜单配置 menu: 首页: / || fas fa-home 归档: /archives/ || fas fa-archive 标签: /tags/ || fas fa-tags 关于: /about/ || fas fa-user # 代码高亮 highlight: enable: true line_number: true auto_detect: false tab_replace: wrap: true hljs: false避坑提示修改配置后务必重启Hexo服务hexo clean hexo server否则可能不生效4. 文章创作与管理4.1 Markdown写作规范Hexo支持标准的Markdown语法同时扩展了一些实用标签。新建文章命令hexo new 我的第一篇文章生成的Markdown文件头部包含Front-matter配置区--- title: 我的第一篇文章 date: 2023-07-20 14:00:00 tags: [Hexo, 教程] categories: 技术 cover: /images/post-cover.jpg # 文章封面图 ---我总结的最佳实践使用三级标题###作为内容分节代码块标注语言类型javascript图片存放在source/images目录每篇文章添加至少一个标签正文长度建议800-2000字4.2 高级内容管理技巧分页配置在全局配置中调整每页显示文章数index_generator: path: per_page: 10 order_by: -date草稿功能创建草稿后不会发布到生产环境hexo new draft 未完成文章 hexo publish 未完成文章 # 发布草稿文章加密安装插件实现密码访问npm install --save hexo-blog-encrypt然后在文章Front-matter中添加password: 123456 abstract: 这里是摘要 message: 请输入密码查看5. 部署到Github Pages5.1 仓库配置与自动化在Github创建名为[username].github.io的仓库username替换为你的账号安装部署插件npm install hexo-deployer-git --save修改全局配置deploy: type: git repo: https://github.com/[username]/[username].github.io.git branch: main message: Site updated: {{ now(YYYY-MM-DD HH:mm:ss) }}部署命令hexo clean hexo generate hexo deploy技巧可以在package.json中添加快捷命令scripts: { deploy: hexo clean hexo generate hexo deploy }然后通过npm run deploy一键部署5.2 自定义域名配置在域名服务商处添加CNAME记录记录类型CNAME 主机记录www 记录值[username].github.io在博客source目录创建CNAME文件无后缀内容为你的域名www.yourdomain.com在Github仓库Settings Pages中配置自定义域名6. 高级优化与SEO6.1 搜索引擎优化配置安装SEO插件npm install hexo-autonofollow hexo-generator-sitemap --save配置示例# 自动为外链添加nofollow nofollow: enable: true exclude: - yourdomain.com # 生成sitemap sitemap: path: sitemap.xml提交到Google Search Console验证域名所有权提交sitemap.xml配置索引优先级6.2 性能优化方案图片压缩安装插件自动压缩图片npm install hexo-image-min --saveCDN加速使用jsDelivr加速静态资源// 在主题配置中替换资源路径 cdn: enable: true jquery: https://cdn.jsdelivr.net/npm/jquery3.6.0/dist/jquery.min.js延迟加载Butterfly主题内置了lazyload功能lazyload: enable: true loading_img: /images/loading.gif7. 常见问题排查问题1部署后访问显示404检查仓库名称是否正确必须为[username].github.io确认部署到了main分支等待1-2分钟Github处理问题2样式丢失运行hexo clean清除缓存检查主题配置文件路径确保所有依赖已安装node_modules问题3自定义域名不生效确认CNAME文件已提交检查DNS解析是否生效可用dig工具测试Github仓库Settings中查看是否有错误提示问题4本地正常但线上异常比较本地与生产环境的Hexo和主题版本检查部署日志是否有报错尝试在另一台机器上测试我自己的博客在2020年迁移时遇到过front-matter解析异常最终发现是YAML格式中混用了Tab和空格。建议使用VS Code的YAML插件来校验语法。

相关新闻

RabbitMQ入门指南:Java实现消息队列基础

RabbitMQ入门指南:Java实现消息队列基础

1. 为什么选择RabbitMQ作为消息队列入门消息队列是现代分布式系统中不可或缺的组件,而RabbitMQ作为最流行的开源消息代理之一,其易用性和可靠性使其成为初学者入门消息队列技术的首选。我至今记得第一次成功运行RabbitMQ生产者-消费者模型时的兴奋感——…

2026/10/15 15:18:01 阅读更多 →
Flow-3D客制化开发实战:从源项注入到物理模型嵌入

Flow-3D客制化开发实战:从源项注入到物理模型嵌入

简介:本资源是一份面向Flow-3D中高级用户与二次开发工程师的V9.4版本客制化全流程教学PPT,聚焦于通过Intel Fortran编写子程序实现边界条件等核心功能的定制,解决标准版无法满足特定波浪模拟、自由表面建模等科研与工程需求的痛点。压缩包仅含…

2026/10/15 15:18:01 阅读更多 →
基于YOLOv8/YOLOv10/YOLOv11/YOLOv12与SpringBoot的麻将识别检测系统(DeepSeek智能分析+web交互界面+前后端分离+YOLO数据)

基于YOLOv8/YOLOv10/YOLOv11/YOLOv12与SpringBoot的麻将识别检测系统(DeepSeek智能分析+web交互界面+前后端分离+YOLO数据)

摘要 随着中国传统智力游戏数字化发展的深入推进,麻将作为极具代表性的国粹文化,其智能化识别与分析技术具有重要的应用价值。本研究设计并实现了一套基于深度学习与现代化Web架构的麻将牌智能识别系统,专门针对42种标准麻将牌型进行高精度检…

2026/10/15 15:17:01 阅读更多 →

最新新闻

光学工程师笔试题深度解析:从Zemax实操到公差分析的能力地图

光学工程师笔试题深度解析:从Zemax实操到公差分析的能力地图

简介:这是一份面向光学工程师求职者与光学相关专业学生的笔试真题文档,聚焦光学基础理论与工程应用能力的综合考查。内容涵盖图解法求像、填空题与计算题三大板块:图解法要求判断成像方向、标注理想光学系统基点位置与焦距;填空题…

2026/10/15 16:05:26 阅读更多 →
分数阶傅里叶变换的Matlab代码包:四种实现与图像加密

分数阶傅里叶变换的Matlab代码包:四种实现与图像加密

简介:分数阶傅里叶变换(FRFT)的MATLAB实现代码包,面向信号处理与图像分析方向的开发者及研究人员,解决传统FFT仅能进行0度和90度变换的限制,可在连续角度域对信号进行频谱分析。压缩包内共9个文件&#xff…

2026/10/15 16:05:26 阅读更多 →
ADS耦合器设计源文件改造与仿真验证全指南

ADS耦合器设计源文件改造与仿真验证全指南

简介:面向射频微波电路设计工程师、通信专业高年级学生以及电磁仿真入门者,这是一份基于ADS软件的耦合器设计源文件,适合用于学习定向耦合器在2.4GHz频段下的设计方法,也适合作为同类射频电路设计项目的参考模板。资源围绕中心频率…

2026/10/15 16:05:26 阅读更多 →
Fraunces 可变字体实战指南:桌面端与网页端的安装、选用与变体轴配置

Fraunces 可变字体实战指南:桌面端与网页端的安装、选用与变体轴配置

前端 【免费下载链接】beautiful-web-type In-depth guide to the best open-source typefaces: https://www.beautifulwebtype.com 项目地址: https://gitcode.com/gh_mirrors/be/beautiful-web-type 点击查看 免费下载 Fraunces 是一款由 Undercase Type 的 Phae…

2026/10/15 16:05:26 阅读更多 →
零基础如何写代码?从理解业务开始的学习路径

零基础如何写代码?从理解业务开始的学习路径

零基础如何写代码,是很多想进入软件开发领域的人遇到的第一个问题。常规建议是选一门编程语言,从变量、循环、函数学起,再逐步接触框架和数据库。这条路可行,但周期较长,对只想解决具体业务问题的人来说,投…

2026/10/15 16:05:26 阅读更多 →
AMQP接入物联网平台:连接断开、心跳与消费确认的实战复盘

AMQP接入物联网平台:连接断开、心跳与消费确认的实战复盘

凌晨两点手机震了,我以为是例行告警,结果是“AMQP连接断开”。那条消息来自我们刚上线不久的企业服务器接入物联网平台项目:设备数据本来应该通过 AMQP 通道源源不断回流到后端,结果网关一断,消息全堵在平台侧。我爬起…

2026/10/15 16:04:25 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/15 13:48:15 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 9:49:14 阅读更多 →