0

je la configuration suivante:HTTPS Redirige Avec site dans AWS

  • Un site de documentation hébergé dans un seau S3
  • Une distribution CloudFront utilisant ce seau comme son origine, en acceptant le trafic HTTP ou HTTPS
  • 3 noms de domaine personnalisés enregistrés via Route 53; appelons-les example.com, .net, et .org.
  • Un certificat ACM pour les 3 domaines aussi HTTPS fonctionnera
  • La example.com Hosted Zone a un dossier ALIAS indiquant la distribution CloudFront, donc http://docs.example.com ou https://docs.example.com montrera le site.

Maintenant, je veux mettre les règles de redirection suivantes en place. Fondamentalement, tout devrait rediriger vers docs.example.com, en utilisant le protocole avec lequel l'utilisateur a demandé à l'origine.

  1. http://docs.example.net>http://docs.example.com
  2. https://docs.example.net>https://docs.example.com
  3. http://docs.example.org>http://docs.example.com
  4. https://docs.example.org>https://docs.example.com

C'est là que je vais avoir du mal. Si je pointe les sous-domaines .net et .org à la distribution CloudFront avec des enregistrements ALIAS, l'URL affichera toujours ce sous-domaine, plutôt que .com. Si je crée des compartiments S3 nommés d'après les sous-domaines .net et .org avec des règles de redirection au .com, et que j'ajoute des enregistrements ALIAS à ces compartiments, alors tout fonctionne bien pour HTTP, mais HTTPS échoue b/c le certificat ACM ne fonctionne que pour CloudFront, pas S3 . Et si j'essaie d'ajouter simplement des enregistrements CNAME aux sous-domaines .net et .org qui pointent vers .com alors HTTPS échoue toujours, et HTTP redirige également vers HTTPS pour une raison quelconque.

Selon ce SO post, il semble que ma seule option est de créer deux distributions CloudFront supplémentaires, une pour .net et une pour .org. Mais cela sonne juste donc sur-machiné pour moi, et va vraiment gonfler le modèle CloudFormation que j'utilise pour faire tout cela.

Quelqu'un peut-il recommander une solution plus simple?

Répondre

0

Il n'y a pas d'approche directe dans CF pour rediriger tous les domaines (même si .com .org et .net sont liés à la même distribution). L'approche la plus simple que je puisse recommander est d'utiliser AWS Edge Lambda dans Cloudfront pour rediriger en conséquence.

+0

Merci pour la suggestion. Ce lien est cassé bien! – Rabadash8820

+0

Merci de mentionner. Corrigé le lien. – Ashan