536 字
3 分钟
小程序真机图片失效与 OSS 防盗链排查
核心表现摘要
这次真机故障的根因不是代码,而是 OSS 防盗链白名单缺失 servicewechat.com,导致“开发者工具可见、真机不可见”的假象。
目录
问题现场
现象非常典型:开发者工具里图片正常,真机上图片全白。因为工具里看起来一切正常,我一度把排查方向放在代码和资源本身上。
本章小结
“工具正常、真机异常”通常不是偶发 bug,而是环境差异触发了同一配置的不同路径。
根因拆解
今天最大的认知变化是重新理解 OSS 防盗链逻辑:
- 浏览器常见空 Referer 请求,命中“允许空 Referer”时可以访问资源。
- 微信真机会带
servicewechat.comReferer。 - 白名单没有该域名时,OSS 会直接返回 403。
结论:Allow Empty Referer 并不等于“完全公开”,它只是放行“没报来源”的请求。
本章小结
这不是“真机玄学”,而是 Referer 白名单策略的必然结果。
排查中的干扰项
中间还有一个干扰项:电脑浏览器也打不开资源,误导我以为 OSS 文件有问题。最后确认是本地代理影响了 DNS 或 IP 路由。
经验是:排查这种网络问题时,手机 4G/5G 环境往往比本机浏览器更干净,更适合作为对照组。
本章小结
先区分“平台策略问题”和“本地网络问题”,能显著缩短排障路径。
本章小结
后续动作已经明确:先修配置,再做代码与文档收口,避免团队重复踩坑。
总结
这次故障让我重新建立了一个排查顺序:先看请求环境差异,再看平台策略,最后才是代码本身。真机问题并不可怕,可怕的是拿错对照组和排查优先级。
小程序真机图片失效与 OSS 防盗链排查
https://blog.moxiaoshuai.fun/2026-01-小程序真机图片失效与oss防盗链排查/ 部分信息可能已经过时




