簡體   English   中英

在 Route 53 和 S3 中使用國際化域名

[英]Using internationalized domain name with Route 53 and S3

我想通過以下地址向全世界公開托管在 Amazon S3 上的 static web 頁面:

zolty.aaa

更重要的是,我想從以下地址重定向用戶:

zol-ty.aaa
żółty.aaa
żólty.aaa
... and all combinations of z-ż, o-ó, etc.. 

到主要地址 - zolty.aaa。 當然,所有域名都被購買了。

當涉及到第一個域名時,這很容易。

  1. 在 Route53 中將 zolty.aaa 設置為 zolty.aaa S3 存儲桶的別名
  2. 在 Route53 中將 zol-ty.aaa 設置為 zol-ty.aaa S3 存儲桶的別名
  3. 將所有請求(在 S3 存儲桶設置中)從 zol-ty.aaa 重定向到 zolty.aaa

不幸的是,如果域包含非 ASCII 字符,事情就沒那么簡單了。

基於AWS 文檔punycode 應該用於國際化域名。

所以現在我的域如下所示:

xn--ty-4ja03asj.aaa

我能夠使用這樣的名稱在 Route 53 中創建托管區域。 現在我想創建 S3 存儲桶並將 ALIAS 添加到 DNS (Route53) 中的這個存儲桶。 根據 Amazon 文檔,S3 存儲桶的名稱應與域名相同。 所以我正在創建存儲桶 xn--ty-4ja03asj.aaa。 但它在 Route53 中不可見作為 ALIAS 的可能目標。

我怎樣才能實現所描述的行為?

我將不勝感激。

在這里檢查您需要做的是:

  1. 將您的域轉換為punycodehttps : //cryptii.com/pipes/punycode

  2. 創建一個托管區域並將該punycode設置為域名;

  3. 將您托管區域中的名稱服務器添加到域控制面板;

S3 存儲桶必須使用punycode創建,並刪除了初始的xn--

żółty.aaa的 punycode 名稱將是xn--ty-4ja03asj.aaa 因此,創建的 S3 存儲桶必須是ty-4ja03asj.aaa

順便說一句,如果使用 Cloudfront,則將原點設置為ty-4ja03asj.aaa.s3-website-<region>.amazonaws.com或者如果只是從 Route 53 指向使用s3-website-<region>.amazonaws.com之后選擇了“S3 網站端點的別名”。

不幸的是,S3 存儲桶名稱不能以前綴 xn-- 開頭

僅當您直接通過 Route 53 進行設置時,才需要具有相同的域名和存儲桶名稱。 如果您使用 CloudFront 進行設置,則存儲桶和域不必相同。

我使用其中一個教程將我的 IDN 與我的 s3 static 網站相關聯。

暫無
暫無

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

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