自建博客,文章到底怎么储存

仔细想了想,实际上应该只有两种方案。

  1. 储存Markdown格式原文,类似Headless CMS的解决方案,最终是使用Markdown原文渲染内容。
    • 通过什么文件系统(IPFS、S3、DB,代码仓库里直接放)储存原文。
    • 还是像notion和WordPress之类的CMS系统,最终获取Markdown原文渲染内容。
  2. 储存格式化数据,相当于储存渲染后的内容。
    • 可能是 markdown ast json 或者是某些编辑器支持的数据格式json,一般会通过DB或者KV存这个。
    • 甚至是直接存HTML

方案1实现起来最轻松但是舍弃了一些在线编辑体验,因为本质是编写Markdown,想要能在线编辑的话,集成WYSIWYG编辑器方面的设置也比较复杂;方案2比较复杂,但是通过WYSIWYG的编辑器来编写文章无论是编辑还是存储都比较顺畅,而且有很好的性能。

不知道佬友觉得那种方案更好,为什么呢?


其实主要是是最近看到 https://tiptap.dev/ 所谓ai native的WYSIWYG很馋,希望能迁移一下从1到2,但是拿不准主意,想参考佬友的意见

要是我,选方案二

要是我,选方案二

markdown放github 免费省心

感谢佬友的方案,我现在也需要嵌入一个所见所得的编辑器,马上开搞方案2

一般都是方案2吧

hexo,md 写,输出成html发布。自动deploy存储在S3,访问通过 edgeone 回源加速。

MD写放任意git,用hexo等生成html存博客服务器。
优点是完全静态,安全省心。缺点是完全静态,加评论等接口不方便。

方案二吧,html看着舒服很多,而且格式多样化

其实我也是有这方面的顾虑,存md确实很方便,但是加一些其他依赖数据库的功能就会觉得这块内容的实现很不搭 :grimacing:

有一种插件是通过git之类嵌在html里实现评论功能的。
注意,境内的博客站的ICP备案和公安备案问题。有交互功能的网站需要企业备案。佬友有开公司吗?

肯定是境外啊,技术博客不需要给境内看 :tieba_025:

我使用的是:Notion + Hexo + GitHub Actions + Vercel + Elog
堪称完美的方案

git上吧,方便省心

我用 md+github
缺点是图片不好放。

我不用开源项目自己写的云笔记 (不设鉴权那部分就是博客) 数据库存的是 Markdown 原始文本,方便,主要是大部分来源是从 NextChat 直接导出的 Markdown 对话记录。样式则是依赖前端渲染。

静态备案不算很麻烦,但不是很想备案 :joy:

:bili_040: 我直接大力出奇迹,把 base64 图片存数据库。。

缺点是加载时要等读完才渲染。优点是简单直接。

不过我的场景没有大量大图,偶尔有那种的话就存图片文件 URL。

可以考虑写 Markdown 推到 Github 上走 Actions 自动部署到 Github Pages

比如我用的是 vuepress-theme-hope(Vuepress) 的方案:233'notes | DailyNotes

我这套部署方案的流程是:VuePress | DailyNotes

直接用 GitHub - 233Official/VuePressTemplate 作为模板仓库参照上面的说明就可以起一个能用的仓库了

图片存储也是一个我比较在意的点,因为本身已经有一个r2当图床用,无论什么方式跑通方案1都需要自己管理图片,没办法做到复制粘贴就能在文章中用,非常不爽