资讯动态

Obsidian图床配置全指南:从对象存储到自动上传,告别图片裂图

发布时间:2026/10/19 5:15:03 来源:尧图企业网站定制
折腾 Obsidian 的朋友应该都遇到过这个场景笔记里贴了十几张截图在电脑上整整齐齐同一份仓库同步到手机图片全裂了。如果还习惯把笔记以 Markdown 或者 HTML 格式分享给别人对方看到的更是只剩一段文字配图全部失踪。这个问题的根因并不复杂——图片还躺在你本地硬盘的某个目录里笔记文件里存的只是一个相对路径离开这台电脑路径就失效了。解决思路同样明确给笔记配一个图床让每一张图片都变成公网链接。今天这篇就围绕 Obsidian 图床配置展开把方案选型、完整步骤、避坑事项和常见问题一次说清楚适合正在用 Obsidian 做知识库、写博客、或者团队内共享笔记的朋友参考。1. 先搞清楚笔记里的图片到底该放哪1.1 本地图片方案的三处痛点很多人刚开始用 Obsidian 时图片都是直接往笔记里粘贴Obsidian 默认会把它保存到仓库根目录下的附件文件夹。这个方式在单机时代没问题但只要你开始多端同步、分享导出痛点马上显现。第一痛是多端同步时图片丢失。Obsidian 官方同步服务可以处理好附件但不少人是把仓库放到第三方同步盘里或者用 Git 管笔记。同步盘偶尔会漏掉小文件Git 操作时也容易忽略附件目录。结果就是电脑上改完笔记手机上一看图片裂了甚至整篇笔记里有几张图永远补不回来。第二痛是分享时对方看不到图。Markdown 里的本地图片路径是相对的你把 .md 文件发给同事对方本机没有你硬盘里的那个目录图片自然加载不出来。导出成 PDF 或者 HTML 时偶尔能带上图但路径稍微一折腾就乱套。第三痛是仓库体积快速膨胀。截图一张动辄 1~3MB一年下来几百张图就是几个 GB 的体积。仓库变大之后同步消耗流量、备份耗时变长、Obsidian 打开仓库的速度也会被拖累。1.2 图床做的事把图片变成一串稳定的 URL图床本质上是一个可以公开访问的图片存储服务。你先把图片传上去得到一个形如https://images.example.com/path/to/pic.png的链接然后在笔记里用![](https://images.example.com/path/to/pic.png)这种方式引用。这样一来图片就不依赖本地文件系统了。无论是手机端、电脑端还是浏览器里打开只要链接能访问图片就能显示。分享笔记时不用打包附件对方只要能看到 Markdown 里的完整链接就能在线加载配图。图床方案最核心的价值是把“本地资源”变成“公网资源”。这一步完成后仓库里的附件文件夹可以名存实亡笔记文件本身也变得更轻——除了文字就是运行在本地的图片外链。1.3 这套方案适合谁不适合谁如果你只是在自己电脑上用 Obsidian偶尔同步到手机不怎么分享笔记那图床不是必需品甚至可以说是过度设计。因为方案再好也要维护多一个环节就多一个出错的可能。但如果你是这几类人图床基本是刚需多端使用 Obsidian希望手机、电脑、平板看到的笔记效果完全一致。会把笔记分享给团队、发到博客、做成在线文档。仓库里截图非常多不想让仓库体量无限增长。经常需要使用“只读链接”给别人展示某篇笔记而不希望附带任何本地文件。我自己的经验是图床搭好后后面所有写作流程都变顺手了。以前最怕粘贴大截图因为每次都要想放哪个文件夹、怎么命名现在只管粘贴剩下的交给自动化流程这也是为什么后文会重点讲“粘贴图片后自动上传”。2. 图床选型对象存储、免费图床、自建三选一2.1 三种常见方案对照在动手配置之前先要选定图床方案。目前常见的选择有三类公共免费图床、对象存储、自建图床。方案成本稳定性使用难度适合场景公共免费图床0 元一般域名和存储策略可能变化低临时测试、个人少量使用对象存储按量付费小流量几乎可忽略高SLA 有保障中配置一次后续自动化Obsidian 主力图床、博客配图自建图床需要服务器或 NAS硬件成本高取决于你的设备与网络高需要维护环境对容量和隐私要求极高的场景公共免费图床最大的问题是不可控。你可能用了半年域名突然被拦截或者服务方改了外链规则到时笔记里所有图片全废。我见过有人贪便宜用免费图床存博客图片结果图挂了之后整个文章观感崩掉还得一张张重新替换成本远大于省下的那点钱。自建图床适合动手能力强的玩家。一台 NAS 或者云服务器装一个开源图床程序配上自己的域名理论上完全可控。但劣势也明显如果你没有稳定的公网服务别人访问你的图片可能慢设备故障或者域名过期同样会造成图片不可用。对多数人来说自建在时间成本和可靠性的平衡上划不来。2.2 从粘贴到外链图片到底经历了什么不管选哪种方案配置图床之前要先理解这整套流程是怎么跑通的。以我推荐的“Obsidian 插件 开源上传客户端 对象存储”组合为例一次图片粘贴的完整链路是你在 Obsidian 中粘贴截图。插件捕获到剪贴板里的图片数据。插件调用本机已经启动的上传客户端服务。上传客户端把图片文件传输到远端对象存储。对象存储返回图片 URL。插件自动把 Markdown 中的本地路径替换成这个 URL。可以把这六个步骤理解成“前台接待员”和“快递员”的分工Obsidian 插件是前台负责接单和回话上传客户端是快递员负责把图片实体送到仓库。对象存储则是仓库URL 就是仓库给你开的“取件凭证”。理解了链路之后你就能明白为什么这个方案是解耦的——插件不做上传客户端不做笔记管理存储不做展示。每一层只需要管好自己那一环排查问题时也更容易定位。2.3 为什么我推荐“对象存储 开源客户端”如果你常年在知识管理圈子里潜水会发现口碑最好的 Obsidian 图床方案基本是两样东西一个主流云厂商的对象存储配一个开源上传客户端。对象存储按量付费而且价格极低。一张 2MB 的图片存一年可能都不到几厘钱访问流量如果只是笔记配图级别一个月下来经常是几分钱到几毛钱。不要被“按量付费”四个字吓到实际用起来真的就是一顿早餐钱都不到。相比公共免费图床它有二三十个九的持久性和较成熟的外链限制配置图片生命周期有保障。相比自建方案你完全不用管服务器运维。开源客户端的价值在于把上传动作本地化、服务化。你可以先手动配置一次存储参数然后一直常驻后台。Obsidian 插件只是往这个本地服务发送上传请求不用关心图片具体传到哪个平台也不用在插件里直接存密钥。这种“插件 客户端”的分离既降低了插件配置门槛也让密钥只待在你自己的电脑里。如果你用的是较轻量级的笔记场景也可以不装客户端直接在 Obsidian 插件里填存储参数。但那样每次都要处理跨域、签名、重试这些问题体验会差不少。所以我自己的结论是花十分钟配置一套“对象存储 开源客户端”之后基本一劳永逸。3. 照抄即可对象存储 开源客户端的完整配置流程3.1 创建存储空间参数一个都不能填错先到任意一家主流云厂商开通对象存储服务。这里以通用的控制台界面为例不同厂商的菜单位置可能略有差异但核心概念是一样的。第一步创建一个存储空间行业里叫 Bucket。创建时需要关注四个参数名称全局唯一类似my-notes-images。这个名称会出现在外链 URL 里建议用带语义的英文和短横线。地域选择离你常驻位置最近的节点。比如你人在国内就选离你所在城市较近的节点图片访问者如果主要是海外则直接选海外节点。地域选错会导致上传和访问延迟偏高不过这个参数后续可以迁移但没必要折腾。存储类型选标准存储。不要为了省钱选低频或归档因为笔记图片随时可能被访问低频存储如果被频繁读取反而会产生额外费用。读写权限选“公共读”。这个非常关键为了让外链可以直接访问必须允许所有人读取但写入权限务必保持私有不要让陌生人上传文件到你空间。创建完 Bucket 后你可以在控制台看到它的基本信息。此时你还没有外网访问域名对象存储会提供一个默认的访问端点通常形如https://bucket-name.endpoint.example.com。这个域名可以直接用来做外链不过部分场景下可能需要绑定自定义域名后文会提到。3.2 生成密钥别用主账号给子账号最小权限对象存储的上传需要一对密钥类似“用户名 密码”的组合官方术语是 AccessKey ID 和 AccessKey Secret。为了避免主账号泄露导致整个云账号失控我强烈建议在控制台里创建一个子用户只授予它操作这个 Bucket 的权限。实际操作时你在云厂商控制台的访问控制IAM/RAM里创建子用户把权限策略限定为“仅访问某个指定 Bucket”并授予读写权限。这个子用户的 AccessKey ID 和 AccessKey Secret 就是我们后面要填进上传客户端的凭证。权限范围一定要尽量小。宁可后续发现不够再拓宽也不要一开始就给个“管理员权限”。密钥一旦泄露如果权限过大攻击者不仅能读写你的图片还可能操作你的其他云资源后果比较严重。拿到 AccessKey 后第一时间把 Secret 保存到一个安全位置。不要在笔记里明文存更不要提交到公开代码仓库。Obsidian 的笔记如果本身就同步到云端也请谨慎处理最好的方式是用密码管理器单独存放。3.3 配置上传客户端字段匹配是重点选一款常用的开源图床客户端这里以社区里成熟度较高的 PicGo 为例。安装后打开左侧菜单进入图床设置选择支持对象存储的图床配置类型并开始填写。配置项填写内容说明服务商/接口选择与对象存储兼容的协议主流对象存储大多兼容 S3 APIEndpoint对象存储提供的地域访问节点例如https://oss.example.comBucket你创建的存储空间名称对应my-notes-imagesAccessKey ID子用户的密钥 ID从控制台复制不要带多余空格AccessKey Secret子用户的密钥 Secret小心存储不要外泄存储路径例如obsidian/{year}/{month}/{filename}自动按年月归档避免根目录堆积Endpoint 是最容易填错的点。各家的控制台会把 endpoint 显示成不同风格比如有的显示oss-cn-region.example.com有的显示完整的https://...。客户端里要求填的通常是“不带 Bucket 前缀”的访问节点地址你要严格按照控制台显示的内容复制。图片命名建议开启“时间戳重命名”。我见过很多人上传图片时保留中文名或者带空格的原始文件名结果外链在新窗口打开时常出问题URL 编码之后非常难看。开启时间戳重命名后每个文件名类似20250321102455-8f3a.png基本不会重名也不会出现编码问题。路径设置我习惯用obsidian/{year}/{month}这样一年下来所有笔记图片按月份归档找图、统计数据都非常方便。不要把所有图片都丢到根目录几百张图之后你就知道痛苦了。配置完成后客户端可以先把“复制图片后自动上传”这个开关打开。PicGo 这类工具常驻系统托盘你截图后按快捷键或直接复制图片它就能自动上传并复制返回链接非常加分。3.4 让 Obsidian 和上传插件联动现在到了真正和 Obsidian 相关的步骤。打开 Obsidian进入设置里的第三方插件页面如果之前没允许社区插件先开启允许。然后搜索一个叫 Image Auto Upload 的插件或者名字里带“image upload”的同类插件安装并启用。这里插一句如果你想手动上传图片其实只需要配合客户端的快捷键就够用了不一定非得装 Obsidian 插件。但要想实现“粘贴即上传”的丝滑体验插件就是必需的一环。安装完成后进入该插件的设置页。通常配置项不多核心是选择上传方式。如果你用的是 PicGo 这类客户端选择对应选项并检查本地服务端口是否匹配默认一般是 36677。插件知道端口之后粘贴图片时就会自动往这个本地服务发上传请求。在你还没启动上传客户端时不要着急测试。客户端必须先开启服务可以简单理解为它要在本机开一个小门Obsidian 插件才会把图片塞进来。启动客户端后回到 Obsidian 随便新建一个笔记粘贴一张截图观察一下图片是不是立刻出现在笔记里。Markdown 源码中是不是多了一行![](https://...)形式的外链。如果发现源码里还是本地路径去检查插件设置里的端口、上传方式是否正确再看客户端服务是否已经在托盘里运行。3.5 端到端验证电脑、手机、分享链接三个维度配置完成后不要急着把整仓库切过来先做一轮端到端验证确认“自认为配好了”不等于“真的可用”。第一轮验证在电脑上。在 Obsidian 新建一篇测试笔记粘贴三张不同尺寸的截图例如一张大图、一张小图、一张动图观察每张图片是否都上传成功。再打开该笔记的阅读模式确认图片显示清晰、加载速度可以接受。第二轮验证在手机上。把仓库同步到手机或者直接在手机端打开同一篇笔记看图片能不能正常渲染。如果图片外链不可访问手机端显示裂图的概率会很高。第三轮验证在分享链接上。把笔记导出为 Markdown 发给朋友或者复制到支持 Markdown 的在线平台确认对方打开后图片都在。我一般会额外把笔记导出一次 HTML用浏览器直接打开因为很多人在这一步发现本地路径早已替换但导出的目录里没有图片副本导致显示异常。如果这三轮都通过图床配置基本就稳了。后面日常使用中粘贴截图、拖拽图片、复制图片到笔记都会自动走一遍上传流程。4. 最容易踩的五个坑权限、防盗链、密钥、命名、跨域4.1 权限不是越严格越好图床本质上就是公开分享图片所以在 Bucket 权限上你需要同时接受两个现实必须允许公网读取但绝不能允许公网写入。有些人安全意识很强把 Bucket 设置成“私有”。结果图片能传上去笔记里引用之后却打不开。这是因为私有 Bucket 的访问地址需要签名认证浏览器在加载 Markdown 图片时不会自动携带签名链接自然 403。另一些人刚好相反为了让上传顺利把 Bucket 设置为“公共读写”。这个操作隐患很大公网任何人都能往里写文件甚至覆盖你已有的图片。一旦有人恶意上传内容整个存储空间可能变成污染源。正确处理方式是读取权限设为公共读写入权限仅限指定子账号。这样上传时必须使用密钥访问时任何人都能通过链接看图权限边界非常清晰。4.2 CORS 和防盗链别一上来就全开CORS跨域资源共享是网页应用才会涉及的概念。如果你只用 Obsidian 桌面端的插件配合本地上传客户端一般不会遇到跨域问题。但如果你在网页版 Obsidian、在线 Markdown 编辑器或者自定义博客后台里使用图床就可能遇到浏览器的跨域限制。此时需要到对象存储控制台配置 CORS 规则允许你常用域名发起跨域请求。常用的配置是AllowedOrigin: *方法允许 GET、PUT、POST暴露的 Header 可以根据需要填写。注意如果只是桌面笔记使用不需要开 CORS开了也不会有什么帮助反而扩大攻击面。按需配置不是越多越安全。防盗链是另一个容易踩的坑。有些云厂商默认不开防盗链有些则提供了可选的 Referer 白名单。如果你开启了防盗链那么很多场景下图片会加载失败笔记软件内部的图片预览不会带标准 Referer微信或部分 App 内嵌浏览器也会清空 Referer最终表现为“笔记里图片时好时坏甚至直接裂图”。我自己的习惯是不开防盗链或者只在明确知道“图片只被自己网站引用”时再开。如果你确实需要记得把空 Referer 加入白名单否则周末在家随手打开笔记可能看到一堆裂图。4.3 AccessKey 是最需要防泄漏的资产AccessKey 一旦泄漏别人就能在你的存储空间里做几乎任何事情上传垃圾文件、删除你的图片、刷流量费用。所以密钥安全这条可以单独拎出来说。我的做法是只使用子账号权限只授权给当前图床 Bucket并且每半年轮换一次密钥。如果你发现密钥可能泄露立即在控制台禁用旧密钥重新生成一对再更新到上传客户端里。还有一个细节不要在 Obsidian 笔记里写明文密钥。哪怕你自认为笔记是私密的一旦仓库同步到第三方同步盘、或者分享某篇笔记时误选了这个文件密钥就出去了。密钥就应该只存在本地密码管理器或者客户端配置里笔记里最多放一个“密钥位置”的提醒。4.4 文件名与归档路径越早规划越省心很多人在图床配置初期不重视命名和路径觉得能上传就行。一个月后打开存储空间看到的是几十个随机名字的图片躺在根目录根本分不清哪张是哪张。我的建议是两层规划第一层是路径。在客户端里设置存储路径时用变量自动分年月归档。以obsidian/{year}/{month}/{filename}为例2025 年 4 月的图片都会放在obsidian/2025/04/目录下后续统计某个月的增量非常直观。第二层是文件名。建议不管原始名称是什么一律由客户端随机生成时间戳文件名。这样既能避免中文名、空格、特殊符号在 URL 中被转码导致的各种问题也能防止重名覆盖。唯一要注意的是如果你在笔记中拿到的是短暂 CDN 签名 URL部分私有空间会这样文件名也会在链接里出现随机文件名反而更利于隐私保护。5. 高频报错排查实录一张表加一套顺序5.1 高频报错速查表配置过程中多少会遇到几个报错我按出现频次整理成了速查表可按现象对号入座。现象可能原因处理方法粘贴图片后没有反应上传客户端没启动或 Obsidian 插件没选对上传方式确认客户端托盘图标存在插件设置里检查服务端口上传时报AccessDeniedAchieve 权限不足或子账号没有该 Bucket 权限去控制台检查子账号授权范围重新写权限策略上传时报SignatureDoesNotMatchAccessKey Secret 复制错、多复制了空格重新复制密钥确认无多余字符图片上传成功但外链打不开Bucket 权限是私有或者防盗链拦截改为公共读调整 Referer 白名单外链加载特别慢地域离访问者太远或没有走 CDN绑定自定义域名配合 CDN 加速中文文件名在部分浏览器无法显示原始文件名包含中文或空格开启时间戳重命名重新上传所有图片都堆在存储空间根目录客户端没有设置存储路径按年月设置自动归档路径手机端打开笔记图片空白笔记外链可能没更新或本地缓存导致先确认外链本身能打开再到 Obsidian 里刷新5.2 三步定位法从客户端再到存储再到外链遇到问题时没有头绪比问题本身更让人焦虑。我总结了“三步定位法”基本能覆盖绝大多数图床异常。第一步看客户端。打开上传客户端的日志面板看上传请求是否成功。如果日志都没有记录说明 Obsidian 插件压根没把上传请求发到客户端问题出在插件设置或服务端口如果日志显示上传报错第一时间检查密钥和 Endpoint。第二步看存储。登录对象存储控制台看 Bucket 里有没有新上传的文件。如果文件在说明上传链路没问题如果文件不在看是否有上传失败记录或者权限策略是否有拒绝项。第三步看外链。在浏览器无痕窗口里直接打开图片 URL。能打开说明外链逻辑正常问题在笔记端403则几乎所有问题都指向权限或防盗链。按这个顺序走一遍90% 的问题能自己在十分钟内定位出来。不要一上来就翻笔记设置很容易绕弯路。5.3 三条独家经验最后分享几条我实际跑了很久之后才总结出来的经验希望能让你少走一段路。经验一上传速度并不代表外链速度。你自己上传快可能是因为本地上行带宽好但别人访问时走的是对象存储节点到他们网络的链路。如果笔记需要分享给异地团队尽量把 Bucket 放在大家共同访问更快的区域或者挂一层 CDN。不要只在本地自测一次就以为万事大吉。经验二删除和替换图片时留个心眼。图床里的图片一旦被笔记引用就不要轻易删除或覆盖。如果某张图确实要换先上传新图得到新 URL再替换笔记里的链接最后才回存储空间清理旧文件。否则中间哪一步漏了笔记里就是一张永久裂图。经验三批量迁移历史图片时不要手动一张张传。用客户端自带的上传功能把本地附件文件夹里的历史图片一次性传上去它会返回对应的 URL 列表你再通过查找替换把笔记里的本地路径换成外链。手动操作几百张图不仅累还非常容易出错。写在后面的一点体会图床配置这件事一开始看起来像是一个“工具折腾项目”但用顺了之后你会发现它真正解决的是笔记系统里的“图片信任问题”——你再也不担心本地文件丢失导致图片消失也不担心发出去的笔记让对方看到一堆裂图。我个人实际跑了小半年之后最大的感受是可以“忘记图片的存在”。写笔记的时候只管粘贴剩下的全自动笔记文件本体永远很轻仓库同步不再拖泥带水。如果你现在还在被本地图片方案折腾不妨按上面的流程搭一套配置过程用不了一小时之后节省的心力远比这点投入值。最后再补一个小技巧如果后续你的图片量持续增长建议每隔几个月去存储空间后台清理一下没有被引用的历史图片。可以写个简单脚本把笔记中所有外链 URL 提取出来和存储空间里的文件清单做一次差集删除差集里的对象。这个操作能有效控制成本也能让图床目录保持干净避免几个月后回头翻图时无从下手。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑