0048-00000200

问题描述

通过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,请参见绑定自定义域名