全部產品
Search
文件中心

Object Storage Service:通過Endpoint和Bucket網域名稱訪問OSS

更新時間:Mar 06, 2026

OSS為每個儲存空間(Bucket)分配一系列訪問網域名稱,支援根據不同業務需求和網路環境靈活訪問OSS資源。本文介紹各網域名稱類型的格式、適用情境和配置方式,協助選擇合適的訪問方式。

核心概念

標準的OSS訪問地址由多個層級組合構成。準確理解以下四個核心概念,對於正確訪問OSS至關重要:

概念

說明

格式

用途

Region ID

通用地區標識

<region-id>ap-southeast-1

用於SDK、ossutil進行V4簽名等情境

專用 Region ID

OSS 專用地區標識

oss-<region-id>

用於構成 Endpoint、API入參、返回參數等情境

Endpoint

服務訪問地址

oss-<region-id>.aliyuncs.com

在SDK、ossutil中配置,用於建立與OSS服務的網路連接等情境

Bucket 網域名稱

具體 Bucket的訪問地址

<bucket-name>.oss-<region-id>.aliyuncs.com

用於瀏覽器直接存取、產生簽名URL或託管靜態網站、自訂網域名 CNAME 解析等情境

這四個概念存在層級關係:Region ID 表示一個地理位置,OSS為其分配對應的專用 Region ID,專用 Region ID與網域名稱尾碼組合構成Endpoint(服務訪問地址)。訪問具體Bucket時,使用Bucket名稱與Endpoint組合形成的Bucket 網域名稱(資源訪問地址)。

說明

各地區的Region ID請參見地區和Endpoint

網域名稱類型

OSS根據網路環境和效能需求提供不同類型的訪問網域名稱。

重要

根據策略調整,為提升OSS服務的合規性和安全性,自2025年3月20日起,新開通OSS服務的使用者在中國內地地區的Bucket將無法通過預設外網網域名稱調用資料操作類API(如上傳、下載檔案),需通過自訂網域名(CNAME)方式訪問OSS服務。使用HTTPS協議訪問(如控制台)時,還需為自訂網域名配置SSL認證

網域名稱類型

適用情境

網域名稱格式

費用特點

是否需要開通

外網訪問網域名稱

Web應用、移動用戶端等公網訪問

  • Endpoint:oss-<region-id>.aliyuncs.com

  • Bucket網域名稱:<bucket-name>.oss-<region-id>.aliyuncs.com

按外網流量計費

預設可用

內網訪問網域名稱

同地區阿里雲內網訪問(如ECS)

  • Endpoint:oss-<region-id>-internal.aliyuncs.com

  • Bucket網域名稱:<bucket-name>.oss-<region-id>-internal.aliyuncs.com

免流量費

預設可用

傳輸加速網域名稱

跨地區、跨國際高速上傳/下載

  • Endpoint:oss-accelerate.aliyuncs.com

  • Bucket網域名稱:<bucket-name>.oss-accelerate.aliyuncs.com

按傳輸加速計費

需開啟傳輸加速功能

CNAME 網域名稱

自訂網域名綁定(靜態資源託管等)

  • Bucket網域名稱:<bucket-name>.<region-id>.<cname-domain>

按外網流量計費

通過自訂網域名訪問

雙棧網域名稱

IPv6網路環境訪問OSS

  • Endpoint:<region-id>.oss.aliyuncs.com

  • Bucket網域名稱:<bucket-name>.<region-id>.oss.aliyuncs.com

同外網流量計費

部分地區支援

外網訪問網域名稱

專為互連網訪問設計,適用於Web應用、移動用戶端、跨地區訪問等情境。SDK預設使用外網訪問網域名稱,只需填寫Region ID即可完成配置,無需額外指定Endpoint。

內網訪問網域名稱

專為阿里雲內網環境設計,適用於同地區的ECS執行個體訪問OSS等情境。通過內網訪問可避免產生外網流量費用,同時獲得更穩定的網路連接和更低的訪問延遲。使用時建議:

  • DNS 配置最佳化

    使用內網Endpoint時,強烈建議配置阿里雲的雲上私網DNS地址(100.100.2.136100.100.2.138),確保擷取正確的VIP地址,避免因DNS解析問題導致OSS訪問異常。

  • VIP 網段路由配置完整性

    OSS為每個Region內網VIP網段劃分了固定位址區段,系統會在指定VIP網段內動態切換IP地址。本地裝置和資料中心通過內網訪問OSS時,路由配置必須涵蓋完整的VIP網段,否則可能因網路路由不完整導致串連中斷。各地區的內網VIP網段資訊請參見地區和Endpoint

    重要

    請確保路由配置涵蓋完整的VIP網段,避免因配置不完整導致網路連通性問題。若因VIP網段配置缺失影響OSS服務可用性,相關損失需由配置方承擔。

  • 安全性群組規則配置

    使用ECS執行個體通過內網訪問OSS時,安全性群組規則不能禁止訪問任何一個VIP網段,確保網路連通性。

傳輸加速網域名稱

啟用傳輸加速功能後可使用的專用網域名稱,通過Global Acceleration節點最佳化資料轉送路徑,適用於跨地區、跨國際的高速上傳/下載情境,顯著改善遠距離訪問的網路品質。

CNAME 網域名稱

OSS 為 Bucket 產生的專用解析網域名稱,用於自訂網域名綁定情境。當需要通過自訂網域名訪問OSS時,應將自訂網域名CNAME解析到該網域名稱,而非外網訪問 Endpoint。

OSS 會為 Bucket 分配地區內的 CNAME 網域名稱,不同 Bucket 可能分配到不同的網域名稱。相比所有 Bucket 共用同一個外網Endpoint,CNAME 網域名稱分散了訪問鏈路,具有更高的可用性。使用時注意:

  • 僅用於 DNS 解析:CNAME 網域名稱僅用於自訂網域名的 DNS 解析配置,不支援直接存取。

  • 通過自訂網域名訪問:完成自訂網域名綁定和CNAME解析配置後,通過自訂網域名訪問 OSS 資源。

雙棧網域名稱

支援IPv4和IPv6雙棧訪問的Endpoint,允許IPv6網路環境下的用戶端直連OSS資源。使用雙棧網域名稱時,用戶端無需特殊配置,在純IPv6或雙棧網路環境中,DNS會自動解析並優先使用IPv6地址建立串連。各地區的雙棧網域名稱資訊請參見地區和Endpoint

如何驗證雙棧網域名稱的IPv6支援?

通過dig AAAA命令驗證雙棧Endpoint是否支援IPv6訪問。以新加坡地區為例:

dig AAAA ap-southeast-1.oss.aliyuncs.com

如果支援IPv6,命令返回結果的ANSWER SECTION部分會顯示AAAA記錄:

ap-southeast-1.oss.aliyuncs.com. 60 IN  AAAA    240b:4000:f10::2c5

使用樣本

瀏覽器

重要

通過OSS提供的訪問網域名稱訪問HTML、圖片等檔案時,瀏覽器會強制下載而非線上預覽。如需實現檔案預覽功能,請通過自訂網域名訪問OSS

以下樣本示範通過控制台擷取私人Bucket的檔案簽名URL,更多擷取簽名URL的方式請參見使用預簽名URL下載或預覽檔案

  1. 前往Bucket列表,單擊目標Bucket。

  2. 單擊目標檔案的檔案名稱或操作列的詳情域名選擇外網網域名稱,然後單擊復制文件 URL

  3. 在瀏覽器中訪問URL。

ossutil

以下樣本示範使用命令列工具ossutil下載檔案。ossutil預設使用外網訪問Endpoint,可通過-e參數指定其他類型的Endpoint:

ossutil cp oss://<bucket-name>/<object-name> <local-path> -e <endpoint>

不同網域名稱類型對應的參數配置:

網域名稱類型

參數配置

外網訪問網域名稱(預設

可省略-e參數,或指定-e oss-<region-id>.aliyuncs.com

內網訪問網域名稱

-e oss-<region-id>-internal.aliyuncs.com

傳輸加速網域名稱

-e oss-accelerate.aliyuncs.com

自訂網域名

-e <custom-domain> --addressing-style cname

SDK

以下展示主流語言V2版本SDK的初始化樣本。SDK預設使用外網訪問網域名稱,只需填寫Region即可完成配置。

Java

OSSClient client = OSSClient.newBuilder()
        .credentialsProvider(provider)
        .region("<region-id>")
        .build();

完整的初始化代碼請參見OSS Java SDK V2(預覽版)

Python

cfg = oss.config.load_default()
cfg.credentials_provider = credentials_provider
cfg.region = '<region-id>'

client = oss.Client(cfg)

完整的初始化代碼請參見OSS Python SDK V2

Go

cfg := oss.LoadDefaultConfig().
        WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
        WithRegion("<region-id>")

client := oss.NewClient(cfg)

完整的初始化代碼請參見OSS Go SDK V2

PHP

$cfg = Configuration::loadDefault();
$cfg->setCredentialsProvider($provider);
$cfg->setRegion('<region-id>');

$client = new Oss\Client($cfg);

完整的初始化代碼請參見OSS PHP SDK V2

C#

var cfg = OSS.Configuration.LoadDefault();
cfg.CredentialsProvider = new OSS.Credentials.EnvironmentVariableCredentialsProvider();
cfg.Region = "<region-id>";

using var client = new OSS.Client(cfg);

完整的初始化代碼請參見OSS SDK for C# 2.0 (preview)

Node.js

const client = new OSS({
    region: 'oss-<region-id>',
    accessKeyId: process.env.OSS_ACCESS_KEY_ID,
    accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
    authorizationV4: true,
});

完整的初始化代碼請參見OSS Node.js SDK

切換網域名稱類型

V2版本SDK支援通過配置項快速切換網域名稱類型,無需手動拼接Endpoint字串:

語言

外網訪問網域名稱

內網訪問網域名稱

傳輸加速網域名稱

雙棧網域名稱

Java

僅設定region

.useInternalEndpoint(true)

.useAccelerateEndpoint(true)

.useDualStackEndpoint(true)

Python

僅設定region

use_internal_endpoint = True

use_accelerate_endpoint = True

use_dualstack_endpoint = True

Go

僅設定Region

WithUseInternalEndpoint(true)

WithUseAccelerateEndpoint(true)

WithUseDualStackEndpoint(true)

PHP

僅設定setRegion

setUseInternalEndpoint(true)

setUseAccelerateEndpoint(true)

setUseDualStackEndpoint(true)

C#

僅設定Region

UseInternalEndpoint = true

UseAccelerateEndpoint = true

UseDualStackEndpoint = true

說明

協議與連接埠

所有地區的Endpoint和Bucket網域名稱均支援HTTP和HTTPS兩種協議訪問。為確保資料轉送安全性,強烈建議在生產環境中使用HTTPS協議。

OSS支援以下連接埠:

連接埠

協議

說明

80

HTTP

HTTP協議預設連接埠

443

HTTPS

HTTPS協議預設連接埠

1935

RTMP

僅用於RTMP推流情境

相關文檔