本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
新增替代網域名稱 (CNAMEs) URLs 以使用自訂
當您建立分佈時, 會為其 CloudFront 提供網域名稱,例如 d111111abcdef8.cloudfront.net。您可以改用替代網域名稱 (也稱為 ),而不是使用此提供的網域名稱CNAME。
若要了解如何使用自己的網域名稱,例如 www.example.com,請參閱下列主題:
使用備用網域名稱的需求
當您將替代網域名稱,例如 www.example.com 新增至 CloudFront 分佈時,下列為需求:
- 備用網域名稱必須是小寫
-
所有替代網域名稱 (CNAMEs) 都必須是小寫。
- 替代網域名稱必須涵蓋在有效 SSL/TLS 憑證內
-
若要將替代網域名稱 (CNAME) 新增至 CloudFront 分佈,您必須將可信任且有效的 SSL/TLS 憑證連接至分佈,以涵蓋替代網域名稱。這可確保只有具有網域憑證存取權的人員才能與與網域CNAME相關的 CloudFront 建立關聯。
受信任憑證是由 AWS Certificate Manager (ACM) 或其他有效憑證授權機構 (CA) 發行的憑證。您可以使用自我簽署憑證來驗證現有的 CNAME,但不適用於新的 CNAME。 CloudFront 支援與 Mozilla 相同的憑證授權單位。如需目前的清單,請參閱 Mozilla 內建 CA 憑證清單
。 若要使用您連接的憑證驗證替代網域名稱,包括包含萬用字元的替代網域名稱, CloudFront 請檢查憑證上的主體替代名稱 (SAN)。您要新增的替代網域名稱必須涵蓋在 中SAN。
注意
一次只能將一個憑證連接至 CloudFront 分佈。
您可以執行以下作業,證明您已獲得授權,將特定的備用網域名稱新增到您的分佈:
附加包含替代網域名稱的憑證,例如 product-name.example.com。
連接網域名稱開頭包含 * 萬用字元的憑證,以使用單一憑證涵蓋多個子網域。當您指定萬用字元時,您可以在 中將多個子網域新增為替代網域名稱 CloudFront。
下列範例說明如何在憑證的網域名稱中使用萬用字元,以授權您在 中新增特定替代網域名稱 CloudFront。
您想要新增 marketing.example.com 做為替代網域名稱。在您的憑證中列出以下網域名稱:*.example.com。當您將此憑證連接至 時 CloudFront,您可以為分佈新增任何替代網域名稱,以取代該層級的萬用字元,包括 marketing.example.com。您也可以新增下列備用網域名稱 (範例):
product.example.com
api.example.com
但是,您無法新增比萬用字元層級高或低的備用網域名稱。例如,您無法新增替代網域名稱 example.com 或 marketing.product.example.com。
您想要新增 mexample.com 做為替代網域名稱。若要執行此作業,您必須在您連接到分佈的憑證上列出網域名稱 example.com 本身。
您想要新增 marketing.product.example.com 做為替代網域名稱。若要執行此作業,您可以在憑證上列出 *.example.com,或是在憑證上列出 marketing.product.example.com。
- 變更DNS組態的許可
-
當您新增替代網域名稱時,必須建立CNAME記錄,以將替代網域名稱的DNS查詢路由至您的 CloudFront 分佈。若要這麼做,您必須具有使用替代網域名稱與DNS服務供應商建立CNAME記錄的許可。一般而言,這表示您擁有此網域,但您也可能是在為網域擁有者開發應用程式。
- 替代網域名稱和 HTTPS
-
如果您希望瀏覽者HTTPS搭配替代網域名稱使用 ,您必須完成一些額外的組態。如需詳細資訊,請參閱使用替代網域名稱和 HTTPS。
使用備用網域名稱的限制
請在使用備用網域名稱時,注意以下限制:
- 備用網域名稱的數量上限
-
如需您可為分發新增之備用網域名稱數量的目前上限,或是有關請求更高配額 (先前稱為限制) 的詳細資訊,請參閱分佈的一般配額。
- 重複和重疊的備用網域名稱
-
如果另一個 CloudFront 分佈中已存在相同的替代網域名稱,即使 AWS 您的帳戶擁有另一個 CloudFront 分佈,您也無法將替代網域名稱新增至分佈。
不過,您可以新增萬用字元替代網域名稱,例如 *.example.com,其中包含 (重疊) 非萬用字元的替代網域名稱,例如 www.example.com。如果您在兩個分佈中有重疊的替代網域名稱, 會使用更具體的名稱相符項目將請求 CloudFront 傳送至分佈,無論DNS記錄指向的分佈為何。例如,marketing.domain.com 比 *.domain.com 更為具體。
如果您有指向 CloudFront 分佈的現有萬用字元DNS項目,且您在嘗試新增CNAME具有更特定名稱的新 時收到設定不正確的DNS錯誤,請參閱 CloudFront 會在我嘗試新增新的 時傳回設定不正確DNS的記錄錯誤 CNAME。
- 網域 Fronting
-
CloudFront 包括防止不同 AWS 帳戶之間發生網域前端的保護。網域前沿是非標準用戶端在某個 AWS 帳戶中建立與網域名稱的 TLS/SSL 連線,但在另一個 AWS 帳戶中對不相關名稱提出HTTPS請求的情況。例如,TLS連線可能會連線至 www.example.com,然後傳送 www.example.org 的HTTP請求。
為了防止網域前端跨越不同 AWS 帳戶的情況, CloudFront 會確保擁有其針對特定連線所提供服務之憑證 AWS 的帳戶,一律符合擁有其在相同連線上處理之請求 AWS 的帳戶。
如果兩個 AWS 帳戶號碼不相符, 會 CloudFront 回應 HTTP 421 Misdirected Request 回應,讓用戶端有機會使用正確的網域進行連線。
- 在網域的頂端節點 (Zone Apex) 新增備用網域名稱
-
當您將替代網域名稱新增至分佈時,通常會在DNS組態中建立CNAME記錄,以將網域名稱的DNS查詢路由至 CloudFront 分佈。不過,您無法為DNS命名空間的頂端節點建立CNAME記錄,也稱為區域頂點;DNS通訊協定不允許它。例如,如果您註冊了DNS名稱 example.com,則區域 apex 為 example.com。您無法為 example.com 建立CNAME記錄,但您可以為 www.example.com、newproduct.example.com 等建立CNAME記錄。
如果您使用 Route 53 作為DNS服務,您可以建立別名資源記錄集,這與CNAME記錄相比有兩個優點。您可以在頂端節點 (example.com) 建立網域名稱的別名資源紀錄集。此外,使用別名資源紀錄集時,您不需要支付 Route 53 查詢。
注意
如需詳細資訊,請參閱 Amazon Route 53 開發人員指南 中的使用網域名稱將流量路由至 Amazon CloudFront Web 分發。