L,.G

槿呈Goidea

读书/新知/生活禅
email
twitter
tg_channel

博客的发展简史和框架简介

博客常用框架简介

博客在中国的发展简史#

1997 年 12 月:美国人 Jorn Barger 第一次使用 「Weblog」 这个名字,标志着博客的诞生。

1999 年:Peter Merholz 首次使用缩略词「blog」。

2001 年:年初,国内发行的《数字财富》杂志上翻译了一篇来自《行业标准》杂志的文章,这篇尼古拉斯・卡尔撰写的《可塑媒体》充当了博客在中国的基本启蒙。同年 9 月 11 日,美国世贸大楼遭遇恐怖袭击,博客成为重要信息和灾难亲身体验的重要来源。从此,博客也正式进入美国主流社会的视野。

2002 年 7 月:「blog」的中文名称由方兴东、王俊秀正式翻译为「博客」。同年 8 月,「博客中国」网站开通,开始了博客在中国的全面启蒙和推动。

2003 年:3 月,南开大学百合博客系统开通,中国科技大学博客系统进入测试阶段,博客在高校开始迅速发展。6 月 19 日起,中国博客网用户「木子美」发表的网络日记,给中文博客网站带来巨大访问量。同年,「博客」成了网络搜索引擎的热门关键词。

2004 年:博客商业化元年,博客开始成为互联网上的一种普遍现象。

2005 年:新浪博客上线。同年,中国的博客用户数量达到了 100 万人。

2006 年:中国的博客用户数量达到了 500 万人。

2007 年:以「海内」、「饭否」、「叽歪」、「做啥」为代表微博客出现,并随之兴起。

2009 年至今:9 月新浪微博上线,博客开始进入独立博客时代。

为什么要写博客#

用博客的形式来记录下你有价值的思考,会带来很多好处,却没有任何明显的坏处。

关于「为什么要写博客」这个话题,有许多人聊过,我就不赘言了。

比较有代表的是刘未鹏先生的《为什么你应该(从现在开始)写博客》,介绍了写博客的好处,包括分享自己的思考和总结,以及通过交流和反思来改进自己的想法。文中还提到,长时间停留在潜意识中的问题能够带来更深入的思考和更多的视角,因此写博客是一种很好的思考和学习的方式。

博客框架选择#

在开始博客写作之前,一个重要的决定就是选择合适的博客框架进行独立部署。博客框架主要分为两种:动态博客和静态博客。除此之外,如果不愿意独立部署,还有一些一站式的博客平台可以选择。

动态博客#

动态博客是最常见的博客形式。WordPress、Typecho、Ghost 等动态博客系统在服务器上动态生成网页,这意味着每当用户访问博客时,内容都会动态生成,然后发送到浏览器。

优点:

  • 易于使用:动态博客系统通常提供用户友好的界面,让你无需编程知识就可以方便地发布和编辑内容。
  • 功能丰富:动态博客系统提供了丰富的插件和扩展,可以很方便地添加新功能,比如社交媒体分享、评论系统、分析工具等。
  • 灵活性:动态博客系统可以方便地进行定制和修改,满足不同的需求。

缺点:

  • 运行速度:由于每个页面都是实时生成的,因此加载速度可能会稍慢。
  • 需要数据库:动态博客系统需要数据库来存储和检索内容,这可能增加了配置和管理的复杂性。
  • 安全性问题:动态博客系统由于其复杂性,可能更容易受到安全攻击。

image

WordPress 是一个开源的网站内容管理系统(CMS),使用 PHP 开发。它最初是一款用于创建博客的工具,但现在已经发展为可以创建各种各样的网站的功能强大的平台。

  • 其主要特性是:
    1. 易用性:WordPress 提供了一个用户友好的界面,让你可以轻松地发布和管理你的内容,无需掌握任何编码技能。
    2. 高度可定制:WordPress 具有高度可定制的特性,它有成千上万的免费和付费主题供你选择,你也可以自己编写或修改主题。
    3. 插件生态系统:WordPress 有一个庞大的插件生态系统,有超过 50,000 个可用的插件可以用于扩展功能,如 SEO、社交媒体共享、电子商务等。
    4. 社区支持:WordPress 有一个庞大且活跃的社区,用户可以在社区中获取插件、主题以及任何关于 WordPress 使用的帮助。
    5. SEO 友好:WordPress 提供了许多内置的 SEO 工具,以及丰富的 SEO 插件,帮助你的网站在搜索引擎中排名更高。
  • 示例博客:hyuanverse

Typecho 是一个开源的轻量级博客系统,使用 PHP 编写,并依赖于 Mysql 数据库。它的目标是让用户能够以简单的方式发布自己的言论,功能简洁但是扩展性强。

  • 其主要特性是:
    1. 简单易用:Typecho 似乎是为了 “简单” 而生,安装简单快速,界面清晰,使用直观。
    2. 极致性能:Typecho 轻巧迅速,系统在 PHP 5.1+ 环境中几乎可达到秒杀一切的速度。
    3. 高度可扩展性:Typecho 具有非常高的可扩展性,你可以通过编写插件和定制主题来添加新的功能。
    4. Markdown 支持:Typecho 支持 Markdown 语法,让你能用更简单的方式来编写文章。
    5. 多用户系统:Typecho 支持创建多个用户,满足团队协作需要。
    6. 方便备份:你可以导出为 xml 文件来备份你的文章和评论,方便网站迁移。
  • 示例博客:友人 C

Ghost 是一个开源的博客平台,使用 Node.js 编写,在设计上追求简洁,致力于干净的写作和阅读体验,同时也提供定制化,如主题设计、插件扩展等。

  • 其主要特性是:
    1. Markdown 支持:Ghost 支持 Markdown 语法,允许使用更简洁的方式进行写作。
    2. 简洁设计:Ghost 界面简洁,注重内容,给作者和读者提供了一种无干扰的阅读和写作体验。
    3. 高性能:Ghost 采用 Node.js 编写,因此具有出色的性能。
    4. 主题自定义:Ghost 支持自定义主题,用户可以根据自己的需求来创建全新的主题,也可以使用别人开发的主题。
    5. 内建 SEO:Ghost 在内部集成了一些 SEO 工具,以优化其 SEO 性能。
    6. 集成发布工具:Ghost 允许你从 Ghost 的博客中直接发布到各种平台,如 Email, AMP, Facebook Instant Articles 等。
  • 示例博客:Dailyio

静态博客#

静态博客,如 Jekyll、Hexo 或 Hugo 等,它们直接生成静态 HTML 文件,这些文件可以直接部署到任何 Web 服务器上。

优点:

  • 速度快:由于页面是预生成的,所以页面加载速度快,用户体验更好。
  • 更安全:静态博客不依赖数据库,也不需要服务器端动态处理,因此安全性更高。
  • 低维护成本:静态博客生成的是静态文件,可以部署在任何支持 HTTP 的服务上,无需复杂的维护和更新。

缺点:

  • 功能限制:静态博客的功能相对简单,如果需要更多的动态功能(如用户评论),需要额外的工具和服务。
  • 更新复杂:每次更新内容时,都需要重新生成和部署网站,对于频繁更新的网站来说可能不太方便。
  • 需要一定的技术知识:创建和管理静态博客通常需要一些编程和命令行知识。

image

JekyII 是一款开源的静态网站生成器,它采用 Ruby 语言开发,与 GitHub Pages 无缝整合,十分适合建设博客和个人页面。

  • 其主要特性是:
    1. 简单:Jekyll 允许你使用 Markdown 或 Textile 和模板引擎 Liquid 编写内容,然后生成一个完整的静态网站,可以轻松托管在任何服务器上。
    2. 静态:Jekyll 把 Markdown(或者其他格式)的文本文件转换为静态 HTML 文件。这意味着你可以使用 GitHub Pages 免费托管你的项目页面、博客、或者网站。
    3. 博客感知:Jekyll 是为博客创建的,因此它可以方便地创建和管理文章。例如它能自动将你的文章按照日期进行排序。
    4. 免费托管:如果你使用 GitHub Pages,那么可以免费托管你的 Jekyll 博客。
  • 示例博客:欧雷流

Hexo 是一个快速、简单且强大的博客框架,使用 Node.js 篇写。它使用 Markdown(或其他渲染引擎)解析文章,并在生成阶段生成静态网页。

  • 其主要特性是:
    1. 快速生成:Hexo 能够快速地处理文件,并且生成静态网页,这使得整个网站的生成速度很快。
    2. Markdown 支持:Hexo 支持 GitHub Flavored Markdown 的所有特性,可以更加便捷地编写文章。
    3. 一键部署:Hexo 有强大的一键部署功能,支持 GitHub Pages,Heroku 等。
    4. 丰富的插件:Hexo 的生态系统中有大量的插件,可以提供 RSS,搜索,评论等功能。
    5. 主题多样:Hexo 有许多可选的主题,可以根据自己的口味和风格进行选择。
  • 示例博客:Macin’s Blog

Hugo 是一个使用 Go 语言编写的静态网站生成器。它专为速度和灵活性而设计,使得创建网站变得更加快速和简单。

  • 其主要特性是:
    1. 速度快:由于 Hugo 是用 Go 语言编写的,所以它生成网页的速度极快。
    2. 易于安装:Hugo 是一个单一的二进制文件,可以在各种平台上运行,安装简单,无需第三方依赖。
    3. 静态站点:Hugo 会将 Markdown(或其他格式)的文档转换成静态 HTML 文件,这样你可以轻松地在任何服务器上部署它。
    4. 实时预览:Hugo 内建有一个可以快速预览网站更改的服务器,可以在你编写内容的时候快速看到结果。
    5. 主题丰富:你可以从 Hugo 的丰富主题库中选择,快速改变网站的外观和感觉。
    6. 强大和灵活:Hugo 支持自定义的 URL,博客内容,路径,整站数据等,对使用者极其友好。
  • 示例博客:pseudoyu

Zola 是一个使用 Rust 编写的静态网站生成器,力求简单且快速,是一个保持简单并专注于提供高速生成的工具。

  • 其主要特性是:
    1. 速度快:Zola 是用 Rust 编写的,Rust 是为了性能和并发而设计的语言,因此 Zola 生成网页的速度很快。
    2. 单一二进制:Zola 发布为一个单一的二进制文件,这意味着没有复杂的环境设置或依赖关系。
    3. Markdown 支持:Zola 利用 markdown 快速创建内容,并支持自定义链接和内联 HTML。
    4. 模板引擎:Zola 提供了一套全套的模板引擎,支持条件、循环、包括、继承等等。
    5. Sass & SCSS 支持:Zola 内建对 Sass/SCSS 的支持。
    6. 内置 Tera:Zola 使用的是 Tera 模板系统,Tera 是用 Rust 编写的模板引擎。
    7. 自动热重载 / 实时预览:Zola 内置了一套服务器系统,可以查看实时的网站构建效果。
  • 示例博客:Pin 起来

Astro 是一个前端框架,用于构建快速、优化的网站和应用。Astro 允许你编写现代的 JavaScript 或 TypeScript,同时通过只在顾客端发送最小静态 js 脚本,确保了更优的性能。

  • 其主要特性是:
    1. 零运行时 JavaScript 压缩: Astro 框架的主要目标是使你能够构建网站,并且尽可能地减少客户端 JavaScript,因为减少客户端 JS 在于改善站点性能。
    2. 框架兼容: Astro 支持在同一个项目中,根据需要使用 React、Vue、Svelte、Preact 或 Vanilla.js 的组件。这意味着你可以在单个项目中混合和匹配最喜欢的 UI 组件。
    3. Markdown 支持: Astro 有优秀的 Markdown 支持,可以将 Markdown 文档直接转换为页面。
    4. 部分渲染: Astro 具有部分渲染功能,可以按需加载 js,这使得 Astro 在构建性能的同时也可提供丰富的交互体验。
    5. SEO 友好:由于 Astro 生成的是静态 HTML 文件,因此对 SEO 友好。
    6. 无需打包: Astro 在开发过程中没有使用打包,这意味着更快的开发体验。
  • 示例博客:四零二曜日

Next.js 是一个基于 React 的开源 JavaScript 框架,它是为服务器渲染和静态网站生成提供的服务端渲染 (SSR) 和静态站点生成 (SSG) 解决方案。

  • 其主要特性是:
    1. 混合渲染:Next.js 允许用户在同一应用程序中选择预渲染 (SSG) 和服务器渲染 (SSR) 页面,可以根据每个页面的需求灵活选择。
    2. 文件系统路由:Next.js 唯一的约束是文件系统必须作为主要路由,你可以在 pages 目录下创建文件,自动转换为一个对应的路由。
    3. 内置 CSS 和 SCSS 支持:Next.js 提供对 CSS 和 SCSS 的内置支持,并且你可以引入其他样式库和 CSS-in-JS 解决方案。
    4. 热重载:Next.js 在开发环境中提供热模块替换功能,你修改代码后,他自动更新和渲染在浏览器上。
    5. API Routes:Next.js 支持 API 路由,允许你构建你的 API 端点,这些 API 对应的路由会被框架自动处理和响应。
    6. 完全兼容 React:Next.js 完全兼容 React 生态系统,你可以在项目中应用大部分 React 相关的库工具。
  • 示例博客:佐玩

Gatsby 是一个基于 React 的免费和开源的框架,特别适合复杂的网站和 web 应用,可以轻松地从各种数据源获取数据。

  • 其主要特性是:
    1. 性能优化:Gatsby 为你的项目产生静态文件,结果是一个高性能的站点。此外,它还内置许多性能优化特性,如预加载、代码拆分等。
    2. 数据集成:Gatsby 使用 GraphQL 拉取数据,并预先生成静态 HTML,不只是 Markdown,数据还可以来自 CMS、API、数据库等。
    3. 强大的插件生态:Gatsby 有一个丰富的插件生态系统,使得添加更多功能变得十分轻松。
    4. 热重载:Gatsby 在开发服务器上使用热重载,当你修改你的 JavaScript、CSS、或数据时,页面会自动更新。
    5. 基于 React:由于 Gatsby 是基于 React 构建的,所以你可以在开发中使用 React 的全部特性和生态系统。

11ty 是一个简单易用的、基于 JavaScript 的静态网站生成器。它旨在成为一个 JavaScript 的替代版本的 Jekyll, 使用户可以不必安装 Ruby 环境就可以在 Node.js 环境中使用。

  • 其主要特性是:
    1. 数据灵活:11ty 非常灵活,允许你使用 JavaScript 数据文件、全局数据文件和以数据为导向的内容创建(比如博客文章)。
    2. 模板支持多样:11ty 支持多种模板语言,包括 Nunjucks、Liquid、Pug、Markdown、HTML、JavaScript 等。
    3. 无侵入性:11ty 不会对你的项目施加任何构建步骤,允许你自由地组织和处理静态文件。
    4. 性能出色:11ty 生成网站的速度足够快,使其在人们在选择静态网站生成器时被视为一个好的选择。
    5. 插件系统:11ty 支持使用插件来扩展功能,比如添加图片优化或 RSS 支持。
    6. 优秀的文档:11ty 的官方文档详尽且易于理解,使它容易上手。

VuePress 是由 Vue.js 团队开发的一个简洁至上的静态网站生成器,特别适合文档类网站。

  • 其主要特性是:
    1. 基于 Vue: VuePress 生成的每一个页面都是一个由 Vue、Vue Router 和 webpack 动态渲染的单页面应用 (SPA)。这为你提供了一个 Vue 开发的环境。
    2. Markdown 支持: VuePress 支持 GFM (GitHub Flavored Markdown ),并为其扩展了一些默认的插件,如表格,滚动目录等。这也意味着在 Markdown 中你可以直接使用 Vue 的组件。
    3. 主题丰富: VuePress 提供了一个默认的主题,旨在创建技术文档,但也支持使用或创建自定义主题。
    4. 内置搜索: VuePress 的内置搜索引擎通过标题、页面内容以及默认子标题等创建搜索索引,无需额外配置。
    5. 性能优化: VuePress 为每个页面预渲染生成静态的 HTML,同时在加载页面时会变为一个完全的 SPA,这可以优化初次加载需要的时间。

Pelican 是一个使用 Python 编写的静态网站生成器。它可以将 Markdown、reStructuredText、或 AsciiDoc 文档转换为 HTML、PDF 等。

  • 其主要特性是:
    1. 写作方便:Pelican 支持用 Markdown、reStructuredText 和 AsciiDoc 格式编写内容,使你的写作变得轻松自由。
    2. 主题丰富:Pelican 社区提供了一些主题,你可以根据个人的需求和风格来进行选择,或者自定义自己的主题。
    3. 插件强大:Pelican 的插件生态系统很丰富,从 SEO 优化到社交媒体集成,你基本上可以找到所有你需要的功能。
    4. 部署简便:Pelican 通过 FTP、SFTP、Rsync、GitHub Pages 或 Amazon S3 等途径来发布你的内容。
    5. 动态内容生成:虽然 Pelican 是一个静态网站生成器,但它支持生成一些看起来像动态的内容,例如生成评论和文章分享。

基于 Notion#

  • Nobelium 是一个使用 NextJS + Notion API 实现的,部署在 Vercel 上的静态博客系统。为 Notion 和所有创作者设计。
  • Osmium 是一个免费、开源的无后端静态博客建站工具,基于 Notion 实现数据存储,使用 Next.js 开发。它衍生自备受 Notion 博客用户好评的 Nobelium,并融入了很多开发者对「Notion 博客」的个人理解。
  • NotionNext 是一个使用 NextJS + Notion API 实现的,支持多种部署方案的静态博客,无需服务器、零门槛搭建网站,为 Notion 和所有创作者设计。
  • Notablog 是一个免费、开源的,基于 Notion 的静态博客建站工具。
  • Next.js Notion Starter Kit 是一个基于 Next.js 和 Notion 的免费、开源建站工具。
  • 示例博客:transitvebullsh
  • Super 是基于 Notion 的付费建站工具。
  • Feather 是基于 Notion 的付费博客工具。

其他#

  • xLog 是一个一站式区块链博客工具,拥有良好的社区生态。
  • Gridea 是一个提供撰写、托管、自定义域名的全功能 Blog 工具。
  • Obsidian Publish 是 Obsidian 推出的发布工具,可以将笔记直接发布为博客。
  • Montaigne 是一款基于 Apple Notes 的博客工具。
加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。