我有以下設置:HTTPS重新導向;網站在AWS
- 一個文檔網站的S3存儲桶託管
- 使用水桶爲原點,接受HTTP或HTTPS流量
- 一個CloudFront的分佈通過Route 53註冊的3個自定義域名;我們稱它們爲
example.com
,.net
和.org
。 - 對於那些3個域的ACM證書,以便HTTPS將工作
- 託管區example.com有指向CloudFront的分佈別名記錄,所以
http://docs.example.com
或https://docs.example.com
將顯示網站。
現在,我想把下面的重定向規則到位。基本上,一切都應該重定向到docs.example.com,使用用戶最初請求的任何協議。
- >
http://docs.example.com
https://docs.example.net
>https://docs.example.com
http://docs.example.org
>http://docs.example.com
https://docs.example.org
>https://docs.example.com
這是我在遇到麻煩。如果我在CloudFront分配中使用ALIAS記錄指出.net
和.org
子域,則該URL仍將顯示該子域,而不是.com
。如果我創建的S3存儲區以.net
和.org
子域名命名,並且重定向規則爲.com
,並將ALIAS記錄添加到這些存儲桶,那麼對於HTTP而言,一切正常,但HTTPS會失敗,B/c ACM證書僅適用於CloudFront,而不適用於S3 。如果我嘗試將CNAME記錄添加到指向.com
的.net
和.org
子域中,則HTTPS仍會失敗,並且由於某些原因,HTTP也會重定向到HTTPS。
根據此SO post,看起來我唯一的選擇是創建兩個額外的CloudFront分配,一個用於.net
,另一個用於.org
。但是,這聽起來像是,所以過度設計給我,並會真正膨脹我用來完成這一切的CloudFormation模板。
任何人都可以推薦一個更簡單的解決方案嗎?
感謝您的建議。那個鏈接被破壞了! – Rabadash8820
謝謝提及。更正了鏈接。 – Ashan