文档首页/ 对象存储服务 OBS/ 常见问题/ 数据回源/ 为什么镜像回源文件和源站文件的大小不一致?
更新时间:2026-07-10 GMT+08:00
分享

为什么镜像回源文件和源站文件的大小不一致?

当镜像回源文件和源站文件的大小不一致时,请按照如下步骤排查:

  1. 查看存储在桶中的回源文件的“最后修改时间”和源站中的文件的时间戳。
    • 如果源站文件的时间戳大于桶中回源文件的“最后修改时间”,表示在回源文件存储至桶中后,源站文件有更新。
    • 如果源站文件的时间戳小于等于桶中回源文件的“最后修改时间”,表示在回源文件存储至桶中后,源站文件没有更新,则继续下一步排查。
  2. 检查回源请求中是否包含特殊请求头。

    例如:客户端向OBS发送请求时,携带了请求头Content-Encoding:gzip,表示获取到文件后可以使用GNU zip算法压缩文件,那么当回源请求的文件满足压缩条件时,从源站获取的文件会被压缩处理后存放至OBS桶中,因此会造成两者大小不一致。

    要避免该问题出现,可以在配置镜像回源规则时做如下设置:

    • 如果配置了“允许传递所有参数”,则需要再配置“禁止传递指定参数”,禁止传递Content-Encoding参数。

    • 如果配置了“允许传递指定参数”,则需要确保允许的参数中不包含Content-Encoding参数。

  3. 桶配置了图片处理样式。

    例如:客户端向OBS桶发送获取图片文件的请求,而该桶配置了“设置缩略”或“设置图片瘦身”图片处理样式。当桶中没有客户端请求的图片文件,OBS会向回源规则配置的源站获取图片,然后将获取的图片存储至桶中,而图片处理样式会对图片做缩放或瘦身,从而导致桶中的图片文件和源站的图片文件大小不一致。

相关文档