67、【Ubuntu】【Hugo】搭建私人博客(一)

【声明】本博客所有内容均为个人业余时间创作,所述技术案例均来自公开开源项目(如Github,Apache基金会),不涉及任何企业机密或未公开技术,如有侵权请联系删除

背景

上篇 blog
【Ubuntu】【Gitlab】拉出内网 Web 服务:Gitlab 配置审视(八)

分析完了 server 块中的 location 配置,下面进入一个新领域:搭建私人博客

搭建私人博客

虽然在线博客,比如 CSDN,博客园,掘金,知乎专栏等平台提供了便捷的在线写作和发布环境,但有时候会有些比较私人,系统化的内容,更想记录在一个自己的专属空间里(不图流量,不图曝光),这个时候,私人博客就是个比较好的选择,下面将用一些篇幅着重介绍下搭建私人博客的过程

首先来看下,私人博客和在线博客的一些特点和区别,从几个角度:内容自主可控,个性化与自由度,长期稳定性与可迁移性等等方面

  • 数据所有权 :对于在线博客等平台,写的文章属于平台托管 ,平台可能修改规则,下架内容,甚至关闭账号等(当然,正常情况下,这种也比较少),而私人博客的数据完全由自己掌握
  • 无审查限制 :平台可能会对敏感词,技术讨论 (有些技术可能还是比较敏感的),个人观点进行过滤或删除,而私人博客只要遵守法律法规,内容自由度高得多
  • 设计自由:可以完全自定义博客的外观,布局,交互逻辑等,而不用受平台模板限制(属于风格可以自定义吧)
  • 功能扩展:可以集成评论系统,搜索,暗黑模式,RSS 订阅(让用户订阅网站的更新内容,而无需频繁手动访问网站),多语言支持等等,按需定制,组件化程度高
  • 域名专属 :可以拥有自己的域名,建立专业形象,CSDN 虽然也可以自定义域名,但属于 xxx.csdn.net 这样的子域名
  • 易于备份与迁移:私人博客(一般是静态博客)本质是一堆 HTML 文件 + Markdown 源文件,可轻松备份到 GitHub,本地硬盘或迁移到任何服务器,备份和迁移方便
  • 专注写作,无干扰:私人博客干净简洁,没有广告,没有推荐流,读者体验更纯粹,不会被平台广告或无关内容干扰。
  • 避免数据追踪:大型平台一般会收集用户行为数据用于推荐或广告,而自建博客可选择不集成任何追踪脚本

举个形象点的比喻,博客平台是租来的摊位,而私人博客是自己盖的房子,如果只图方便,用平台博客就足够了

OK,分析完平台博客和私人博客的一些特点,下面来分析看私人博客都有哪些主流系统,首先是第一类:主流静态博客生成器(适合大多数人,其主要优点在于安全,快速,免费托管,版本可控,支持 Markdown 语法等)

1、Hugo(Go 语言),极速之王

  • 适合人群:追求极致构建速度、希望快速迭代内容的人
  • 优势 :构建速度极快(万篇文章秒级生成,Go 语言本身就是性能利器 ),博客主题丰富(可参考 Hugo 主题网站 https://themes.gohugo.io),原生支持多语言,分类,标签,RSS 订阅,搜索等功能
  • 缺点:模板语法(Go Template)对新手稍有门槛

2、Hexo(Node.js),中文生态友好

  • 适合人群:熟悉 JavaScript / Node.js 的用户,尤其中文博主
  • 优势 :插件生态成熟(比如 hexo-deployer-git 一键部署),中文主题多(NexT,Butterfly 等美观且功能强),社区教程丰富(B站,知乎大量入门指南)
  • 缺点:依赖 Node 环境,大型站点构建较慢

3、Jekyll(Ruby),GitHub 官方亲儿子
适合人群:想用 GitHub Pages 但不想折腾部署的人

  • 优势 :GitHub Pages 原生支持,无需 CI/CD,并且与 GitHub 深度集成(Issues 评论、Actions 自动构建等)
    缺点国内配置略麻烦,主题较少更新

这里再提一点,上面提到的三种系统都是静态博客生成器(Static Site Generator,简称 SSG) ,SSG 可以将纯文本内容(一般是 Markdown 文件)和模板自动转换为完整的静态 HTML 网站,其流程大致如下

SSG 不依赖数据库或服务器端脚本(没有后端) ,最终生成的网站只包含 HTML,CSS,JavaScript 和图片等静态文件,可以直接通过任何 Web 服务器(甚至 GitHub Pages 等免费托管平台)快速,安全地提供服务


OK,本篇先到这里,如有疑问,欢迎评论区留言讨论,祝各位功力大涨,技术更上一层楼!!!更多内容见下篇 blog
【Ubuntu】【Hugo】搭建私人博客(二)

相关推荐
刘一说6 小时前
Vue 动态路由参数丢失问题详解:为什么 `:id` 拿不到值?
前端·javascript·vue.js
熊猫钓鱼>_>7 小时前
动态网站发布部署核心问题详解
前端·nginx·容器化·网页开发·云服务器·静态部署
方也_arkling7 小时前
elementPlus按需导入配置
前端·javascript·vue.js
我的xiaodoujiao7 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 44--将自动化测试结果自动推送至钉钉工作群聊
前端·python·测试工具·ui·pytest
沛沛老爹7 小时前
Web开发者转型AI:多模态Agent视频分析技能开发实战
前端·人工智能·音视频
David凉宸7 小时前
vue2与vue3的差异在哪里?
前端·javascript·vue.js
笔画人生7 小时前
Cursor + 蓝耘API:用自然语言完成全栈项目开发
前端·后端
AC赳赳老秦7 小时前
外文文献精读:DeepSeek翻译并解析顶会论文核心技术要点
前端·flutter·zookeeper·自动化·rabbitmq·prometheus·deepseek
小宇的天下7 小时前
Calibre 3Dstack --每日一个命令day18【floating_trace】(3-18)
服务器·前端·数据库
芋圆奶绿,要半t8 小时前
ubuntu20/2204修改系统时间的命令
ubuntu