问题描述
通过OSS默认公网域名访问2023年08月15日后创建的Bucket中后缀为.apk或者.ipa的文件,服务器返回400错误。
问题原因
出于安全考虑,自2023年08月15日起,针对该日期之后创建的Bucket,如果通过OSS默认公网域名(bucketname.oss-[region].aliyuncs.com)或传输加速域名(bucketname.oss-accelerate.aliyuncs.com或bucketname.oss-accelerate-overseas.aliyuncs.com)访问其中后缀为.apk或者.ipa的文件,使用URL签名请求或匿名访问请求将被阻断。服务器返回400错误,错误码为ApkDownloadForbidden。
问题示例
以下请求使用OSS公网域名匿名访问.apk文件,服务器返回400错误。
GET /test.apk HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
HTTP/1.1 400 Bad Request
Server: AliyunOSS
<?xml version="1.0" encoding="UTF-8"?>
<Error>
<Code>ApkDownloadForbidden</Code>
<Message>The APK file is not allowed to be distributed in a public network using the OSS endpoint, please use CNAME instead.</Message>
<RequestId>xxxxxxxxxxxxx</RequestId>
<HostId>oss-example.oss-cn-hangzhou.aliyuncs.com</HostId>
</Error>
解决方案
使用自有域名访问上述文件时将不会被阻断。如何使用自有域名访问OSS,请参见绑定自定义域名。
文档内容是否对您有帮助?