You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

S3存储桶对象URL嵌入图片偶发404问题排查咨询

直接嵌入S3存储桶对象URL偶发404的原因分析

1. Safari预加载/缓存策略引发的无效请求

Safari有独立的资源预加载逻辑,会提前发起资源请求,但如果后续页面不再需要该资源,或者请求的签名URL在到达S3前就已过期,S3可能根本没收到完整请求,或是直接拒绝请求但不写入日志。这种情况下Safari控制台会记录请求ID,但S3日志里找不到对应记录。

2. S3限流的静默处理场景

S3对前缀级别的请求有QPS限制,当短时间内请求量超过阈值,通常会返回403(限流),但极端场景下边缘节点可能直接丢弃请求,既不返回响应也不生成日志。这类情况虽少见,但会表现为偶发的无日志404。

3. 签名URL的时间窗口偏差

如果使用带签名的S3 URL,Safari发起请求后若遇到网络延迟,到达S3时签名已经过期。此时S3本应返回403,但部分浏览器的错误处理逻辑会将这类错误显示为404,而且过期的签名请求可能不会被S3写入日志。

4. 网络层面的请求丢包

请求在DNS解析或传输过程中出现丢包,导致S3完全没收到请求,但Safari会记录请求已发出并显示404错误。这种场景下S3自然不会有对应日志留存。

验证建议

  • 核对S3日志的时间范围与Safari记录的请求时间,注意时区差异
  • 查看S3的CloudWatch指标,确认是否有ThrottlingRequests指标上升
  • 尝试延长签名URL的过期时间,观察404出现频率是否降低
  • 对比Chrome、Firefox等其他浏览器的请求情况,确认是否为Safari特有问题

内容的提问来源于stack exchange,提问作者David

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:22:35