Skip to content

个人知识站搭建指南:选型、同步、发布与成本 ​

一套能长期用下去的知识站,成本和复杂度都不在技术上,而在三个决定上:内容源头用什么格式、同步和发布要不要分开、托管放在哪里。 本文基于 2026 年 10 月的实测与官方定价,把这三个决定拆开讲清楚。

0. 先分清三件事 ​

大多数人搭知识站失败,不是因为工具选错,而是一开始把三件不同的事混成了一件:

层次要解决的问题典型误用
记录快速抓住一闪而过的想法用发布工具做草稿箱,写一半的东西被公开
沉淀让零散内容逐渐长成体系用云笔记存成品文章,同一主题攒出五份重复
发布让内容被搜索引擎和别人看到用文档平台发布,SEO 权重归平台

这三层对工具的要求是冲突的:记录要轻,沉淀要能生长,发布要可控和可索引。没有哪个产品能同时把三件做好,所以正确做法是分层选工具、用文件格式把它们串起来。


1. 选型:六个平台对照 ​

1.1 它们其实不是同一类东西 ​

把语雀、飞书、Notion、ima、Obsidian、有道云笔记放在一起比,很容易得出“都差不多”的错误结论。按本质分类只有三组:

协作型云文档(语雀、飞书文档、Notion) 数据在别人的服务器上,强项是多人在线协作、权限管理、评论审阅。适合团队一起写,不适合作为你个人内容的永久载体。

本地笔记(Obsidian) 数据是你磁盘上的 Markdown 文件,双链、图谱、插件生态。协作能力几乎为零,但内容的归属权和可迁移性最强。

AI 检索层(ima、Notion AI、有道智能问答) 重点不在“写”,而在“问”。把资料喂进去,用自然语言检索出带出处的答案。

传统云笔记(有道云笔记) 扫描、OCR、语音速记、网页收藏,定位是“随手记”,目录层级浅,不适合长期技术沉淀。

1.2 关键数据对照 ​

产品免费额度入门付费能否发布成自己的站
语雀100 篇/月、5 个知识库、AI 100 次/天、协作 5 人、月流量 1GB专业 ¥99/年(无限文稿、1500 库、协作 50 人)
超级 ¥299/年(协作 500 人、单附件 2GB)
可公开链接;自定义域名要企业版(¥50~120/人/月)
飞书文档100 人以内团队可用;云文档+IM+邮箱共用 15GB(企业认证后 100GB)商业版 ¥50/人/月起基本不能,只有分享链接
Notion个人无限 block;一旦有第 2 个成员,掉进 1000 block 试用限制;单文件 5MB;10 位访客;7 天历史Plus $10/人/月(年付)
Business $20/人/月(含完整 AI)
能,Sites + 自定义域名
ima(腾讯)个人功能基本全免费,空间 30GB 起(新注册 50GB,教育认证最高 100GB),单文件约 150MB,支持 19 种格式团队版 2026/6 上线(第三方口径约 ¥29/人/月,官方未公开价目)
企业版按容量订阅
不能,本质是问答库
ObsidianApp 永久免费,2026 年 2 月起商用也不再强制执行授权Sync $4/月(1GB 总量、单文件 5MB)
Sync Plus $8/月(10GB、单文件 200MB)
Publish $8/站/月
能,Publish;或自己接静态站
有道云笔记3GB会员 ¥198/年(50GB、OCR、PDF 转 Word)只能分享单篇
自建(VitePress + Pages)无限制仅域名 ¥70~300/年能,SEO 完整

价格均为 2026 年 10 月官方页面口径,各平台调价频繁,下单前请复核。

1.3 三个平台的两个隐藏成本 ​

Notion 的 AI 是分层卖的。 Plus($10)只给试用额度,真正能用的 Notion Agent、AI 会议纪要、跨应用搜索都在 Business($20)。自定义 Agent 还按 credit 另计(约 $10/1000 credits)。团队用起来,实际单价是 $20 而不是 $10。

语雀的能力锁在会员等级后面。 导出、API、自定义域名、公开花园都跟会员绑定。免费版每月 100 篇文稿配额,写得多很快就顶到。

1.4 一条不可妥协的原则 ​

内容的源头必须是纯 Markdown 文件。

只要源头是 .md,今天放 Obsidian、明天推 Git、后天换任何静态站生成器,都只是复制粘贴。一旦源头是块结构(Notion、语雀、飞书),搬一次就要脱一层皮——导出会丢层级、丢图片链接、丢代码块高亮。

这不是偏好问题,是可迁移性问题。选工具时可以妥协功能,不能妥协这一点。


2. 成本:一年的真实账单 ​

项目费用
域名(.com / .homes)¥70~300/年
Cloudflare Pages(构建、带宽、CDN、SSL)¥0(500 次构建/月、2 万个文件/站、单文件 25MiB)
Cloudflare Workers + D1(若要访问统计)¥0(免费额度内)
Gitee 私有仓库(个人)¥0
GitHub 账号与 Actions¥0
Obsidian 本体¥0
同步(坚果云 / Obsidian Sync)¥0~345/年
ICP 备案(仅国内托管需要)¥0,耗时 1~2 周

不含同步的话,一年的开销就是域名钱。 这就是静态站架构最大的优势:没有服务器要维护,没有数据库要备份,访问量涨十倍也不会多花钱。

免费额度的真实边界值得记住:Cloudflare Pages 免费版给 500 次构建/月,一天能发十几次;站点最多 2 万个文件,单文件 25MiB。个人文档站离这些上限非常远。


3. 架构:四层,且同步与发布分开 ​

3.1 整体结构 ​

┌─────────────────────────────────────────┐
│ 1  写作层    Obsidian + 纯 Markdown 文件  │
└──────────────────┬──────────────────────┘
                   │ 同步(网盘 / Obsidian Sync)
┌──────────────────▼──────────────────────┐
│ 2  版本层    Gitee 主仓 + GitHub 镜像     │
└──────────────────┬──────────────────────┘
                   │ push 触发 或 本地直传
┌──────────────────▼──────────────────────┐
│ 3  构建层    VitePress(Node.js)         │
└──────────────────┬──────────────────────┘
                   │
┌──────────────────▼──────────────────────┐
│ 4  托管层    Cloudflare Pages + 自有域名  │
└─────────────────────────────────────────┘

每一层都可以单独替换:换同步工具不影响写作,换托管平台不影响 Markdown,换框架不影响内容。这是这套架构能活很久的原因。

3.2 为什么同步和发布要分开 ​

因为两个范围不相等:

笔记库/(全部内容,可能 500 篇)
├── 草稿、私人笔记、客户资料 —— 永远不公开
└── 标记了 publish: true 的 —— 几十篇成品
        │
        └──→ Git 仓库 → 网站(公开,进搜索引擎)

同步管的是整库,发布管的是子集。如果整个笔记库就是一个 Git 仓库并直接连 VitePress,那么草稿、私人资料、半成品想法都会进版本库、推到 Gitee/GitHub 上。虽然可以在构建时排除,但已经推出去了。

分开之后,日常操作反而更轻:写完保存就完事,网盘自动传,不用 commit、不用想提交信息、不用管冲突。只有真要发布时才碰 Git,那时候你本来就该认真写一条 message。

3.3 推荐目录结构 ​

笔记库/                    ← 同步盘,不初始化 Git
├── 00-inbox/             随手记,不分类
├── 10-notes/             主题笔记,一篇一主题
├── 90-private/           不公开的
└── 99-assets/            附件(图片、PDF)

site/                      ← Git 仓库(Gitee 主 + GitHub 镜像)
├── docs/                 VitePress 源文件
├── package.json
└── .gitignore

3.4 什么时候可以不用分开 ​

如果满足三个条件——笔记全是纯文本、没有任何私人内容、总量就几十篇——那一份 Git 全包更简单,别为了架构洁癖多搭一层。用 obsidian-git 插件定时自动 pull/push 即可。

分开的唯一理由是“库里有不该公开的东西”,或者“发布集远小于全库”。


4. 两台电脑怎么同步 ​

4.1 先排除一类方案 ​

常见推荐里的 Syncthing、Resilio 是点对点同步,只在两台设备同时在线时才能传数据。

如果你的情况是“周一下午在 A 机写到关机,周二上午在 B 机接着写”,那 P2P 必然出问题:A 的改动从没到过 B,两边各自基于旧版本继续写,等下次同时在线就是大面积冲突。

所以拓扑必须是星型——两台机器都只跟云端通信,云端是唯一权威版本。

4.2 三个可选方案 ​

方案费用自动化主要问题
Obsidian SyncStandard $4/月(1GB、单文件 5MB)
Plus $8/月(10GB、单文件 200MB)
全自动,冲突处理优雅Standard 容量小,有附件必须上 Plus
坚果云 + Nutstore Sync 插件免费(1GB 上传 / 3GB 下载 每月)
专业版 ¥199/年(30GB、流量不限)
全自动,国内速度好免费额度按月度流量算,附件多容易爆
Git(obsidian-git 插件)¥0定时提交冲突要手动合并;连续自动提交会把版本历史淹掉

Obsidian Sync 的设备数不限,两端电脑加手机平板都不额外收费,端到端加密,密钥只在你自己手里。学生、教师、非营利组织打 4 折,购买后 7 天内可全额退款。

要避开一个坑:别让网盘同步和 Git 仓库同时管同一个 .git 目录。OneDrive、iCloud 对“大量小文件 + 高频写入”的处理不好,仓库损坏的案例不少。要么全用 Git,要么让库彻底不初始化 Git。

4.3 三条操作纪律 ​

  1. 开工前等同步完成再动手。 打开 Obsidian 看同步状态,转完再编辑。这是冲突的头号来源。
  2. 关机前确认已同步。 写完最后一篇立刻关机,那几分钟的改动会留在本地队列,下次开机才上传。
  3. 决定 .obsidian 目录同步与否。 同步它,插件和主题设置两端一致,但 workspace.json 会互相覆盖窗口布局。建议同步,但排除 workspace.json。

5. ima 怎么接进来 ​

5.1 一个必须先纠正的认知 ​

坊间流传“ima 会自动把相近内容合并到同一篇文章”。实测不是。

它的真实能力是聚类分组:知识库里的「AI 整理」按主题聚类,几秒后给出若干簇、每簇一个建议名称,然后自动打标签、生成同名分组视图。去重也是提示式的——你问“检索标题相似度超过 80% 的文档”,它列个清单给你,删不删、怎么并,你自己动手。

原文一个字都不会被改写。ima 里没有“你那篇文章”这个实体,它存的是文件快照(PDF、公众号、网页、Markdown),只能整份替换,不能续写。

所以它解决的是“找得到”,不解决“不重复”。同一主题丢进去五次,就会老老实实躺五份。

5.2 它能做和不能做 ​

能做做不到
列知识库、列文件、按语义搜索把文本直接写进知识库(接口要求文件先上传成媒体资源)
读任意文件正文、答案带出处修改已有文件内容
批量导网页链接(每次最多 10 条)自动识别“这几篇是同一主题”
把已上传文件挂进指定知识库合并、改写、删除

5.3 正确用法 ​

不要在 ima 里存成品文章。 这是重复的根源。成品只存一处,就是 Obsidian 那篇;ima 退回它该待的位置:

  • ima 存:PDF、公众号文章、网页、别人的报告、会议录音转写——你没法编辑、只需要查询的东西
  • Obsidian 存:你自己写的、会反复修改、要发布的东西,一个主题一篇,持续生长

两者之间是单向的:ima → Obsidian 顺畅(能搜、能读、能批量拉),Obsidian → ima 只能手动上传。

顺带一提,合并时有个容易踩的坑:“重复”不等于“完全重复”。拆分上传的版本里经常藏着主篇没有的细节(比如某个表格多一列、某段展开更细),直接删会丢信息。正确做法是以最长版本为骨架,逐节比对补入独有内容,并在文末留一张合并记录表,写清哪份被吸收了什么。


6. GitHub 不通怎么办 ​

6.1 三个必须先知道的事实 ​

事实影响
Gitee Pages 已于 2024 年停服,入口下架、直链失效别指望“Gitee 仓库直接出网站”,这条路已死。网上仍有大量过时教程
Cloudflare Pages 原生只认 GitHub / GitLab,不支持 GiteeGitee 仓库没法直接连 Cloudflare 自动构建
Cloudflare 构建时是它去拉 GitHub,不是你的电脑去拉你本地打不开 GitHub,并不影响 Cloudflare 构建

第三条是关键。真正被网络卡住的只有两件事:本地 push 不上去、本地 clone 不下来。Cloudflare 从海外机房访问 GitHub,一直是通的。

6.2 按“断的频率”选方案 ​

断的频率做法改动量
偶尔(一周几次,等一会儿就好)GitHub 保持主仓,本地加 Gitee 作第二个 remote,双推;Cloudflare 继续监听 GitHub。急用时 wrangler pages deploy 兜底最小,五分钟
经常(几乎天天推不上去)Gitee 作主仓,发布走 wrangler 直传,GitHub 只做代码备份中等,每台电脑配置一次
完全不通 / 读者主要在国内EdgeOne Pages + 自有域名 + ICP 备案最大,备案 1~2 周

判断原则:别为偶发故障改架构。 一周断几次的情况,加个第二 remote 就够了;为了偶发的网络抖动把整条构建链路改成手动直传,反而会丢掉“push 即发布”这个最省心的特性。

6.3 直传方案的具体命令 ​

bash
npm run docs:build
npx wrangler pages deploy docs/.vitepress/dist --project-name 你的项目名

两条注意:Direct Upload 项目以后不能转成 Git 集成,Cloudflare 明确要求新建项目;拖拽上传限 1000 个文件,命令行支持 2 万个。

6.4 国内托管的门槛 ​

腾讯云 EdgeOne Pages 有长期免费套餐、不限流量、支持 Git/CLI 部署、3200+ 边缘节点。但有两道门槛:

  • 免费子域名 *.edgeone.cool 强制带时效 token,只能当临时预览,不能作为长期公开链接
  • 加速区域一旦包含中国大陆,自定义域名必须完成 ICP 备案,否则返回 403

想免备案,只能选“全球(不含中国大陆)”,代价是国内访问速度打折。而且这个选项一旦选定就不能改,要切换得删项目重建。

6.5 另一个理由:留个镜像 ​

Gitee 对内容的审核比 GitHub 严格。技术文档一般碰不到,但如果内容涉及行业评论、政策解读之类,仓库有被限制的可能。

所以保留 GitHub 镜像不只是防网络故障,更是内容存续的保险。


7. 安装清单 ​

按角色分四组,只装你要用的。

7.1 写作端:Obsidian ​

Windows

方式一,命令行(推荐,便于以后更新):

powershell
winget install Obsidian.Obsidian

方式二,官网下载 Obsidian-x.x.x.exe 安装包,双击安装。

macOS

bash
brew install --cask obsidian

或从官网下载 .dmg,拖进「应用程序」。Apple Silicon 与 Intel 都有对应版本。

Linux

官网提供 .AppImage、.deb、.rpm;也可用 snap install obsidian --classic 或 flatpak install flathub md.obsidian.Obsidian。

iOS / iPadOS

App Store 搜索 Obsidian,免费下载。

Android

Google Play 下载;国内网络受限时到官网下载 APK 直接安装。移动端与桌面端用同一个库(vault),靠同步服务保持一致。

首次使用的三件事

  1. 创建库(Vault):选一个空文件夹,不要放在系统盘的用户目录深处,路径里最好不含中文空格,将来接 Git 更省事
  2. 设置中文界面:Settings → General → Language
  3. 装社区插件前先关安全模式:Settings → Community plugins → Turn on community plugins

7.2 构建端:Node.js + Git ​

VitePress 要求 Node.js 20~24,推荐 22(LTS)。

Windows

powershell
winget install OpenJS.NodeJS.LTS
winget install Git.Git

装完重开终端,验证(Windows PowerShell 5.1 不支持 && 串联,请逐行执行):

bash
node -v
npm -v
git --version

三个命令都能输出版本号,环境就齐了。

macOS

bash
brew install node git

想管理多版本,用 brew install fnm 或 nvm,比直接装全局 Node 灵活。

Linux(Debian/Ubuntu)

bash
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs git

必做的两步配置(两台电脑都要):

bash
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"

邮箱要与 Gitee/GitHub 账号一致,否则提交记录挂不到你的头像上。

7.3 同步端(选一个) ​

Obsidian Sync:Obsidian 内 Settings → Sync → 登录 → 创建或连接远程库。A 机「新建远程库」,B 机「连接已有库」,用同一个账号。注意 Standard 只有 1GB 总量、单文件 5MB,有 PDF 和截图就选 Plus。

坚果云:装桌面客户端 → 注册 → 把笔记库文件夹设为同步文件夹 → Obsidian 里装 Nutstore Sync 插件(插件 ID nutstore-sync,坚果云官方维护)→ 登录即可,不用手填 WebDAV 地址。插件里有「路径过滤」和「跳过大文件」,把附件目录排除掉能省很多流量。

7.4 发布端(按需) ​

bash
npm install -g wrangler    # Cloudflare 部署命令行
wrangler login             # 浏览器授权一次

winget install GitHub.cli  # Windows,可选
brew install gh            # macOS,可选

8. 发布流程 ​

8.1 首次配置(每台电脑一次) ​

bash
# 1. 克隆发布仓库
git clone https://gitee.com/你的账号/site.git
cd site

# 2. 装依赖
npm install

# 3. 本地预览
npm run docs:dev

.gitignore 至少要有这几行:

gitignore
node_modules/
docs/.vitepress/dist/
docs/.vitepress/cache/
.DS_Store
*.log

如果笔记库本身也要进 Git(不推荐,见 3.2),额外加:

gitignore
.obsidian/workspace.json
.obsidian/workspace-mobile.json

8.2 日常写作 ​

  1. 打开 Obsidian,等同步完成
  2. 在 00-inbox/ 随手记,或在 10-notes/ 直接写主题笔记
  3. 保存即完成,网盘自动上传
  4. 关机前确认同步状态

不需要 commit,不需要 push。 这是分离架构最大的好处。

8.3 发布一篇文章 ​

  1. 在笔记的 frontmatter 里加 publish: true
  2. 跑同步脚本,把它复制进 site/docs/ 并修正图片路径 (脚本逻辑很简单:遍历 10-notes/,读 frontmatter,筛出 publish: true 的文件复制过去。写成 Node 脚本后一条命令即可,不必手动拖文件)
  3. 本地预览确认排版
bash
npm run docs:dev
  1. 提交并推送
bash
git add -A
git commit -m "新增:个人知识站搭建指南"
git push origin main        # Gitee
git push github main        # 镜像,可选
  1. Cloudflare 检测到推送,自动构建上线(1~2 分钟)

8.4 网络不通时的兜底 ​

bash
npm run docs:build
npx wrangler pages deploy docs/.vitepress/dist --project-name 你的项目名

产物直接在本地构建,只依赖本机网络,绕开 GitHub。

8.5 双 remote 配置 ​

bash
git remote set-url origin https://gitee.com/你的账号/site.git
git remote add github https://github.com/你的账号/site.git

之后 git push origin main 推 Gitee,git push github main 推 GitHub。网络好时两个都推,不好时只推 Gitee,Cloudflare 那边等网络恢复后自然跟上。


9. 常见问题 ​

Q:为什么不用 GitHub Pages? 国内访问不稳定,且它明确不允许商用站点。Cloudflare Pages 带宽不限、构建次数更多、支持自定义域名和边缘函数。

Q:域名要备案吗? 托管在 Cloudflare 不需要。托管在国内平台(EdgeOne、阿里云 OSS、腾讯云 COS)且使用大陆节点时必须备案。备案本身免费,但要 1~2 周。

Q:内容多了怎么加搜索? VitePress 内置本地搜索,零配置,几千页以内够用。再大就接 Algolia DocSearch(开源文档免费)或自建 Meilisearch。

Q:一定要写代码吗? 不用。改内容只需编辑 Markdown,在 GitHub/Gitee 网页上也能直接改。只有在改导航、配色、首页布局时才需要碰配置文件和 Vue 组件。

Q:本地能完全不装环境吗? 能。把仓库托管在 Cloudflare 页面并在网页端编辑 Markdown,构建在 Cloudflare 服务器上跑,你只需要浏览器。代价是没法本地预览,改样式会很痛苦。

Q:附件(PDF、图片)怎么办? 放 99-assets/ 并在同步里排除,或者用对象存储(Cloudflare R2、阿里云 OSS)外链。别让大文件进 Git 仓库,二进制文件会让仓库迅速膨胀且无法有效 diff。

Q:需要备份吗? 需要,而且不止一份。Git 仓库本身就是版本备份,但它是单点的。建议:Gitee + GitHub 双仓、本地保留完整库、重要内容定期导出成 PDF 或 zip 存档。


10. 一页速查 ​

决定推荐理由
内容格式纯 Markdown唯一可无损迁移的格式
写作工具Obsidian数据归你,插件生态强
同步坚果云(省钱)/ Obsidian Sync(省心)星型拓扑,适配交替使用
版本控制Gitee 主 + GitHub 镜像推送稳 + 内容保险
站点框架VitePress轻、快、中文资料多
托管Cloudflare Pages免费、带宽不限、全球 CDN
检索ima(素材)/ 站内搜索(成品)各管一段,不混用
年成本¥70~300(域名)其余全在免费额度内

最需要记住的一句:技术选型随时可换,内容格式一旦选错就要付迁移代价。所以先把 Markdown 定下来,其余都是可以慢慢替换的配件。

由 VitePress 构建,笔记源自本地 Obsidian 库