問題描述
請求阿里雲Object Storage Service中的資源時,提示“SecondLevelDomainForbidden”錯誤碼,詳細報錯如下:
錯誤一:
The bucket you are attempting to access must be addressed using OSS third level domain錯誤二:
Please use virtual hosted style to access
問題原因
發生錯誤一的原因:Bucket的請求網域名稱不為第三層網域名。
發生錯誤二的原因:Host錯誤。
解決方案
請根據具體報錯,執行以下相應的操作:
錯誤一的解決方案:針對OSS的網路請求,除了GetService(ListBuckets)API以外,其他所有請求的網域名稱均由帶有指定Bucket資訊的第三層網域名組成。訪問網域名稱結構為
BucketName.Endpoint,BucketName為您的儲存空間名稱,Endpoint為儲存空間對應的地區網域名稱。例如https://examplebucket.oss-cn-hangzhou.aliyuncs.com。錯誤二的解決方案:通過外網訪問OSS服務時,以URL的形式表示訪問的OSS資源,詳情請參見OSS訪問網域名稱使用規則。OSS的URL結構為
[$Schema]://[$Bucket].[$Endpoint]/[$Object]。例如,您的Region為華東1(杭州),Bucket名稱為examplebucket,Object訪問路徑為destfolder/example.txt,則外網訪問地址為https://examplebucket.oss-cn-hangzhou.aliyuncs.com/destfolder/example.txt。說明[$Schema]包含HTTP或者HTTPS。
[$Bucket]表示儲存空間名稱。
[$Endpoint]為Bucket所在資料中心供外網訪問的Endpoint,詳情請參見Region與Endpoint的對應關係。
[$Object]填寫上傳到OSS上的檔案的訪問路徑。
適用於
Object Storage Service