本文介绍访问文件时报错ApkDownloadForbidden的原因和解决方法。
问题现象
通过Bucket外网域名(bucketname.oss-[region].aliyuncs.com
)或者传输加速域名(bucketname.oss-accelerate.aliyuncs.com
或bucketname.oss-accelerate-overseas.aliyuncs.com
),以文件URL或者匿名请求的形式访问后缀为.apk文件、.ipa文件、MIME类型(即响应头中content-type)为application/vnd.android.package-archive
或者application/iphone
的文件时,服务器返回400错误,错误码为ApkDownloadForbidden
。
问题原因
出于安全考虑,通过文件URL或者匿名请求的方式访问指定类型文件,请求被阻断。
自2023年08月15日00:00:00起,通过Bucket外网域名访问该日期之后创建的Bucket内后缀为.apk或者.ipa文件。
自2023年08月15日00:00:00起,通过传输加速域名访问该日期之后开启传输加速的Bucket内后缀为.apk或者.ipa文件。
自2024年08月05日00:00:00起,通过Bucket外网域名访问该日期之后创建的Bucket内MIME类型(即响应头中content-type)为
application/vnd.android.package-archive
或者application/iphone
的文件。自2024年08月05日00:00:00起,通过传输加速域名访问该日期之后开启传输加速的Bucket内MIME类型(即响应头中content-type)为
application/vnd.android.package-archive
或者application/iphone
的文件。
解决方法
通过自定义域名访问后缀为.apk文件、.ipa文件、MIME类型(即响应头中content-type)为application/vnd.android.package-archive
或者application/iphone
的文件。具体步骤,请参见绑定自定义域名至Bucket默认域名。
附录
以下表格详细列举了哪个时间点创建的Bucket以及哪个时间点开启传输加速后,使用哪种域名类型或者指定方式可以正常访问指定后缀以及MIME类型的文件。
文件类型 | 时间 | 访问方式 |
后缀为.apk或者.ipa文件 | 2023年08月15日00:00:00之前创建的Bucket | Bucket外网域名 |
2023年08月15日00:00:00之前为Bucket开启传输加速 | 传输加速域名 | |
任意时间创建的Bucket | Bucket内网域名 | |
自定义域名 | ||
在Header中包含签名 | ||
阿里云CDN回源OSS(源站指定为OSS) | ||
MIME类型(即响应头中content-type)为 | 2024年08月05日00:00:00之前创建的Bucket | Bucket外网域名 |
2024年08月05日00:00:00之前为Bucket开启传输加速 | 传输加速域名 | |
任意时间创建的Bucket | Bucket内网域名 | |
自定义域名 | ||
在Header中包含签名 | ||
阿里云CDN回源OSS(源站指定为OSS) |