閱讀780 返回首頁    go windows


訪問域名__訪問與控製_開發人員指南_對象存儲 OSS-阿裏雲

OSS域名構成規則

針對OSS的網絡請求,除了GetService這個API以外,其他所有請求的域名都是針對具體Bucket的三級域名,由BucketName和Endpoint構成:BucketName.Endpoint。其中Endpoint根據Bucket所在Region(數據中心)的不同以及內外網訪問方式的不同會有所區分。

外網Endpoint規則

這裏的外網指的是互聯網。

  1. Region + .aliyuncs.com

內網Endpoint規則

這裏的內網指的是阿裏雲內網網絡。

  1. Region + -internal + .aliyuncs.com

OSS開通Region和Endpoint對照表

請參考訪問域名和數據中心

OSS SDK 域名設置

OSS SDK中幫助用戶對於每一個操作拚接了訪問域名。但用戶在對不同區域的Bucket進行操作的時候需要設置不同的Endpoint。

以Java SDK為例,準備對華東1節點的Bucket進行操作時,需要在對類實例化時設置Endpoint:

  1. String accessKeyId = "<key>";
  2. String accessKeySecret = "<secret>";
  3. String endpoint = "https://oss-cn-hangzhou.aliyuncs.com";
  4. OSSClient client = new OSSClient(endpoint, accessKeyId, accessKeySecret);

在ECS中使用內網Endpoint訪問OSS

在同一個Region的ECS和OSS之間可以通過內網地址來訪問,不同Region的ECS和OSS之間則無法通過內網訪問。

例如用戶購買了北京的ECS,其OSS有兩個Bucket:

  • 其中一個Bucket叫 beijingres,Region為華北2,那麼可以使用 beijingres.oss-cn-beijing-internal.aliyuncs.com 去訪問 beijingres 的資源。
  • 另外一個Bucket叫 qingdaores, Region為華北 1,那麼從北京的ECS用內網地址 qingdaores.oss-cn-qingdao-internal.aliyuncs.com是無法訪問OSS的,必須使用外網地址 qingdaores.oss-cn-qingdao.aliyuncs.com

上麵JAVA SDK的例子中使用了該Bucket的外網地址進行訪問,如果要通過內網地址進行訪問,需要對Endpoint進行簡單修改:

  1. String accessKeyId = "<key>";
  2. String accessKeySecret = "<secret>";
  3. String endpoint = "https://oss-cn-hangzhou-internal.aliyuncs.com";
  4. OSSClient client = new OSSClient(endpoint, accessKeyId, accessKeySecret);

最後更新:2016-11-23 16:04:09

  上一篇:go 基本概念介紹__開發人員指南_對象存儲 OSS-阿裏雲
  下一篇:go 訪問OSS__訪問與控製_開發人員指南_對象存儲 OSS-阿裏雲