J'essaie de configurer le transfert dans Amazon Route53. Mon dernier service DNS (Nettica) m'a permis d'acheminer les requêtes vers "aws.example.com" vers "https://myaccount.signin.aws.amazon.com/console/".
Cette fonctionnalité est-elle prise en charge par Route53?
Comment Nettica y parvient-elle? Insère-t-il un ou des enregistrements spéciaux A, CNAME, PTR ou TXT?
dns
forwarding
amazon-route53
Saurav
la source
la source
Réponses:
Je rencontrais exactement le même problème que celui décrit par Saurav, mais j'avais vraiment besoin de trouver une solution qui ne nécessitait rien d'autre que Route 53 et S3. J'ai créé un guide pratique pour mon blog détaillant ce que j'ai fait.
Voici ce que j'ai trouvé.
Objectif
En utilisant uniquement les outils disponibles dans Amazon S3 et Amazon Route 53, créez une URL de redirection qui redirige automatiquement http://url-redirect-example.vivekmchawla.com vers la page de connexion AWS Console alias "MyAccount", située à l' adresse https. : //myaccount.signin.aws.amazon.com/console/ .
Ce guide vous apprendra à configurer le transfert d'URL vers n'importe quelle URL, pas seulement celles d'Amazon. Vous apprendrez comment configurer le transfert vers des dossiers spécifiques (comme "/ console" dans mon exemple), et comment changer le protocole de la redirection de HTTP à HTTPS (ou vice versa).
Première étape: créez votre compartiment S3
Ouvrez la console de gestion S3 et cliquez sur "Créer un compartiment".
Deuxième étape: nommez votre compartiment S3
Choisissez un nom de compartiment. Cette étape est vraiment importante! Vous devez nommer le bucket EXACTEMENT le même que l'URL que vous souhaitez configurer pour le transfert. Pour ce guide, j'utiliserai le nom "url-redirect-example.vivekmchawla.com".
Sélectionnez la région qui vous convient le mieux. Si vous ne savez pas, conservez la valeur par défaut.
Ne vous inquiétez pas de la configuration de la journalisation. Cliquez simplement sur le bouton "Créer" lorsque vous êtes prêt.
Étape 3: Activez l'hébergement de site Web statique et spécifiez les règles de routage
Collez l'extrait de code XML suivant dans son intégralité.
Si vous êtes curieux de savoir ce que fait le XML ci-dessus, consultez la documentation AWM pour «Syntaxe pour spécifier les règles de routage» . Une technique bonus (non couverte ici) consiste à transférer vers des pages spécifiques chez l'hôte de destination, par exemple
http://redirect-destination.com/console/special-page.html
. Renseignez-vous sur l'<ReplaceKeyWith>
élément si vous avez besoin de cette fonctionnalité.Étape 4: notez le "point de terminaison" de votre bucket de redirection
Notez le «point de terminaison» d'hébergement de site Web statique qu'Amazon a créé automatiquement pour ce compartiment. Vous en aurez besoin pour plus tard, alors mettez en surbrillance l'URL entière, puis copiez-la et collez-la dans le bloc-notes.
MISE EN GARDE! À ce stade, vous pouvez cliquer sur ce lien pour vérifier si vos règles de redirection ont été entrées correctement, mais soyez prudent! Voici pourquoi...
Disons que vous avez entré la mauvaise valeur dans les
<Hostname>
balises dans vos règles de redirection. Peut-être avez-vous tapé accidentellementmyaccount.amazon.com
au lieu demyaccount.signin.aws.amazon.com
. Si vous cliquez sur le lien pour tester l'URL du point de terminaison, AWS redirigera volontiers votre navigateur vers la mauvaise adresse!Après avoir remarqué votre erreur, vous modifierez probablement le
<Hostname>
dans vos règles de redirection pour corriger l'erreur. Malheureusement, lorsque vous essayez de cliquer à nouveau sur le lien, vous finirez probablement par être redirigé vers la mauvaise adresse! Même si vous avez corrigé l'<Hostname>
entrée, votre navigateur met en cache l'entrée précédente (incorrecte!). Cela se produit parce que nous utilisons une redirection HTTP 301 (permanente), que les navigateurs comme Chrome et Firefox mettront en cache par défaut.Si vous copiez et collez l'URL du point de terminaison dans un autre navigateur (ou effacez le cache de votre navigateur actuel), vous aurez une autre chance de voir si votre
<Hostname>
entrée mise à jour est enfin la bonne.Pour être sûr, si vous souhaitez tester votre URL de point de terminaison et vos règles de redirection, vous devez ouvrir une session de navigation privée, telle que "Mode navigation privée" dans Chrome. Copiez, collez et testez l'URL du point de terminaison en mode navigation privée et tout ce qui est mis en cache disparaîtra une fois que vous aurez fermé la session.
Étape 5: Ouvrez la console de gestion Route53 et accédez aux jeux d'enregistrements de votre zone hébergée (nom de domaine)
Étape 6: Cliquez sur le bouton "Créer un jeu d'enregistrements"
Cliquez sur «Créer un ensemble d'enregistrements» pour ouvrir la fenêtre Créer un ensemble d'enregistrements sur le côté droit de la console de gestion Route53.
Étape 7: créer un jeu d'enregistrements CNAME
Dans le champ Nom, saisissez la partie nom d'hôte de l'URL que vous avez utilisée lors de l'attribution d'un nom à votre compartiment S3. La "partie nom d'hôte" de l'URL est tout à GAUCHE du nom de votre zone hébergée. J'ai nommé mon compartiment S3 "url-redirect-example.vivekmchawla.com", et ma zone hébergée est "vivekmchawla.com", donc la partie du nom d'hôte que je dois saisir est "url-redirect-example".
Sélectionnez "CNAME - Nom canonique" pour le type de ce jeu d'enregistrements.
Pour la valeur, collez l'URL du point de terminaison du compartiment S3 que nous avons créé à l'étape 3.
Cliquez sur le bouton "Créer un jeu d'enregistrements". En supposant qu'il n'y ait pas d'erreur, vous pourrez désormais voir un nouvel enregistrement CNAME dans la liste des jeux d'enregistrements de votre zone hébergée.
Étape 8: Testez votre nouvelle redirection d'URL
Ouvrez un nouvel onglet de navigateur et saisissez l'URL que nous venons de configurer. Pour moi, c'est http://url-redirect-example.vivekmchawla.com . Si tout a bien fonctionné, vous devez être envoyé directement sur une page de connexion AWS.
Parce que nous avons utilisé l'
myaccount.signin.aws.amazon.com
alias comme URL de destination de notre redirection, Amazon sait exactement à quel compte nous essayons d'accéder et nous y conduit directement. Cela peut être très pratique si vous souhaitez fournir un lien de connexion AWS court, propre et de marque aux employés ou aux sous-traitants.Conclusions
Personnellement, j'adore les différents services AWS, mais si vous avez décidé de migrer la gestion DNS vers Amazon Route 53, le manque de transfert d'URL facile peut être frustrant. J'espère que ce guide vous a aidé à configurer un peu plus facilement le transfert d'URL pour vos zones hébergées.
Si vous souhaitez en savoir plus, consultez les pages suivantes du site de documentation AWS.
À votre santé!
la source
Le support AWS a proposé une solution plus simple. C'est fondamentalement la même idée proposée par @Vivek M. Chawla, avec une implémentation plus simple.
AWS S3:
aws.example.com
Redirect all requests to another host name
et saisissez votre URL:https://myaccount.signin.aws.amazon.com/console/
AWS Route53:
Yes
. Cliquez sur leAlias Target
champ et sélectionnez le compartiment S3 que vous avez créé à l'étape précédente.Référence: Comment rediriger des domaines à l'aide d'Amazon Web Services
Documentation officielle AWS: existe-t-il un moyen de rediriger un domaine vers un autre domaine à l'aide d'Amazon Route 53?
la source
Redirect all requests to another host name
option existe- t-elle toujours? Je ne peux pas le voir lorsque je vais aux propriétés du bucket.J'ai pu utiliser nginx pour gérer la redirection 301 vers la page de connexion aws.
Accédez à votre dossier nginx conf (dans mon cas, c'est
/etc/nginx/sites-available
dans lequel je crée un lien symbolique vers/etc/nginx/sites-enabled
pour les fichiers conf activés).Ensuite, ajoutez un chemin de redirection
Si vous utilisez nginx, vous aurez très probablement des blocs de serveur supplémentaires (des hôtes virtuels dans la terminologie apache) pour gérer votre apex de zone (example.com) ou comment vous l'avez configuré. Assurez-vous que l'un d'entre eux est défini comme serveur par défaut.
Dans Route 53, ajoutez un
A record
foraws.example.com
et définissez la valeur sur la même adresse IP utilisée pour le sommet de votre zone.la source
Mettre à jour
Bien que ma réponse originale ci-dessous soit toujours valide et puisse être utile pour comprendre la cause de la non-disponibilité du transfert d'URL basé sur DNS via Amazon Route 53 , je recommande vivement de consulter la solution indirecte totalement intelligente de Vivek M. Chawla via le Prise en charge d'Amazon S3 pour les redirections de sites Web et la réalisation d'un serveur autonome moins et donc d'une solution gratuite au sein d'AWS seulement comme ça.
Réponse originale
Nettica doit exécuter une solution de redirection personnalisée pour cela, voici le problème:
Vous pouvez créer un alias CNAME comme
aws.example.com
pourmyaccount.signin.aws.amazon.com
, cependant, DNS ne fournit pas de support officiel pour l'aliasing d'un sous-répertoire commeconsole
dans cet exemple.https://myaccount.signin.aws.amazon.com/
(je viens d'essayer), car cela résoudrait votre problème tout de suite et aurait beaucoup de sens en premier lieu; de plus, cela devrait être assez facile à configurer de leur côté.Pour cette raison, quelques fournisseurs DNS ont apparemment implémenté une solution personnalisée pour autoriser les redirections vers des sous-répertoires; J'imagine qu'ils facilitent fondamentalement un alias CNAME pour un domaine qui leur est propre et qu'ils redirigent à nouveau de là vers la destination finale via une redirection HTTP 3xx immédiate .
Donc, pour obtenir le même résultat, vous devez avoir un service HTTP exécutant ces redirections, ce qui n'est pas la solution simple que l'on espère bien sûr. Peut-être / J'espère que quelqu'un pourra encore trouver une approche plus intelligente.
la source
Si vous rencontrez toujours des problèmes avec l'approche simple, créez un seau vide
Redirect all requests to another host name
sous Hébergement Web statique dans les propriétés via la console. Assurez-vous que vous avez défini 2 enregistrements A dans route53, un pourfinal-destination.com
et un pourredirect-to.final-destination.com
. Les paramètres de chacun d'entre eux seront identiques, mais le nom sera différent afin qu'il corresponde aux noms que vous avez définis pour vos buckets / URL.la source