簡體   English   中英

在不使用CNAME的情況下將Route53的子域指向CloudFront

[英]Point a subdomain from Route53 to CloudFront without using CNAME

我有一個子域(dev.example.com),需要將其指向我的Cloudfront發行版(xyz.cloudfront.net)。 我做了以下步驟

1)創建了Cloudfront發行版。 創建雲前端分配時,請不要在Cname字段中指定任何內容。

2)在Route53中使用“ A”記錄創建一個Alias記錄,並將dev.example.com指向xyz.cloudfront.net。

但是此設置不起作用。 僅當我在cloudfront發行版中指定cname字段時,它才有效。

有什么想法可以使這個工作嗎?

*.cloudfront.net URL訪問CloudFront發行版時,必須指定CNAME。 即使您使用的是A記錄。

您正在Route 53中創建ALIAS記錄。即使您沒有創建CNAME記錄,也必須在您的發行版的CNAME字段中指定DNS條目dev.example.com

否則,CloudFront將不知道您請求的發行版。

另一種選擇是使用專用的IP地址,但這將花費您600美元。

CloudFront在其配置順序中需要所謂的CNAME條目(備用域名),以將傳入的請求與分發相關聯,因此,它們必須是全局唯一的。

但是,通配符似乎與單個子域發生沖突,這是一個例外,但事實並非如此。

如果您使用的是子域,則應該通過提供兩個分發來解決CloudFront對備用域名分配的限制:

blue:  dev.example.com
green: *.example.com

將dev.example.com的DNS記錄指向綠色的CloudFront端點。 (而且不要超越我...)

您會發現,盡管進行了DNS設置,但由於CloudFront實際上不知道或不在乎請求是如何路由到它的,因此, 藍色部分仍會處理dev.example.com請求-它使用SNI和Host標頭來選擇正確的分配。 無論中間路由使用哪個DNS記錄,對dev.example.com請求dev.example.com將匹配藍色。

要將流量切換為綠色,請從藍色刪除備用域名,綠色的通配符將自動開始承載流量。 無需更改DNS。

這是記錄的行為:

如果備用域名已經存在於另一個CloudFront分配中,則即使您的AWS賬戶擁有另一個分配,您也無法將備用域名添加到CloudFront分配中。

但是, 您可以添加通配符備用域名,例如* .example.com,其中包括(與之重疊)非通配符備用域名,例如www.example.com 重疊域名可以在同一分配中,也可以在單獨的分配中,只要兩個分配都是使用同一AWS賬戶創建的。 (添加了重點)

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html#alternate-domain-names-restrictions

除非您僅打算使用CloudFront域名,否則如果您想讓CloudFront服務於這些域,則必須在“備用域名”框中包括一個或多個自定義域名,例如dev.example.com。

你可以這樣

專用IP自定義SSL功能

Cloudfront POP的專用IP地址將花費您600美元。

在這里更多細節

獲得專用IP后,即可在DNS中創建指向這些IP地址的A記錄。

Cloudfront基於SNI(服務器名稱指示)工作,而SNI需要一個CNAME才能將您的分布映射到該位置。

希望能幫助到你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM