閱讀901 返回首頁    go 阿裏雲 go 技術社區[雲棲]


OSS訪問域名使用規則

OSS域名構成規則

針對OSS的網絡請求,除了GetService這個API以外,其他所有請求的域名都是帶有指定Bucket信息的三級域名組成的。

訪問域名規則:BucketName.Endpoint。其中Endpoint表示OSS對外服務的訪問域名。OSS以HTTP RESTful API的形式對外提供服務,當訪問不同的Region的時候,需要不同的訪問域名。Endpoint分內網和外網訪問域名。

例如: 華東1 Region的外網Endpoint是oss-cn-hangzhou.aliyuncs.com,內網Endpoint是oss-cn-hangzhou-internal.aliyuncs.com     

Region和Endpoint對照表請參考訪問域名和數據中心

如何通過外網訪問OSS服務

這裏的外網指的是互聯網。通過外網訪問產生的流入流量(寫)是免費的,流出流量(讀)是收費的。詳情請閱讀OSS服務價格頁

外網訪問OSS有如下兩種方式:

  • 訪問方式1,在訪問的時候以URL的形式來表示OSS的資源的。OSS的URL構成如下:

    
    
    1. <Schema>://<Bucket>.<外網Endpoint>/<Object> 三級域名訪問方式
    2. Schema:值為HTTP或者為HTTPS
    3. Bucket:用戶的OSS存儲空間
    4. Endpoint:用戶的Bucket所在數據中心的訪問域名,這裏您需要填寫外網Endpoint
    5. Object:用戶上傳在OSS上的文件

    示例:如您在Region為華東1,Bucketname為abc,Object為myfile/aaa.txt,那麼您的外網訪問地址為:

    
    
    1. abc.oss-cn-hangzhou.aliyuncs.com/myfile/aaa.txt

    您還可以直接將Object的URL鏈接放入HTML中使用,如下所示:

    
    
    1. <img src="https://abc.oss-cn-hangzhou.aliyuncs.com/mypng/aaa.png" />
  • 訪問方式2: 通過OSS SDK配置外網訪問域名。

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

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

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

如何通過內網訪問OSS服務

這裏的內網指的是阿裏雲產品之間的內網通信網絡,例如您通過ECS雲服務器訪問OSS服務、或阿裏雲CDN可以配置OSS內網訪問域名進行回源。內網產生的流入流出流量均是免費的。詳情請閱讀OSS服務價格頁

內網訪問OSS有如下兩種方式: