121 votes

Hébergement statique sur Amazon S3 - Configuration DNS

Je suis en train de travailler sur une petite webapp (client-side) je veux l'héberger sur Amazon S3. J'ai trouvé plusieurs guides sur ce sujet et ont réussi à créer moi-même un seau (avec le même nom que mon domaine), de le définir comme un site web et de télécharger certains contenus.

Lorsque je suis en difficulté, et où l'ensemble de la documentation commence à devenir un peu vague, est de savoir comment configurer correctement mon DNS.

Tous mes greffier (123-reg) pourrait suggérer était le transfert web qui me donne mydomain.com.s3.amazonaws.com

Que dois-je configurer, et où (ie. 123-reg / Amazon) puis-je obtenir une URL propre?

256voto

secretmike Points 4517

On dirait que vous avez fait la plupart du travail déjà. Pour plus de clarté, je vais aller sur les étapes à nouveau juste pour vérifier que vous avez correctement configuré:

  1. Créer un compartiment s3 à l'aide de votre nom de domaine comme le seau (nom de votre seau nom doit être www.example.com si vous voulez que votre site soit example.com ou www.example.com)

  2. Téléchargez votre contenu dans le compartiment s3. Choisissez un nom conforme de votre site web, les fichiers d'index (index.html habituellement). Vous pouvez également télécharger une page personnalisée pour 404 Non Trouvé des erreurs. Appel de cette 404.html. Donner des autorisations de Lecture de tous les fichiers de votre site web afin que le public puisse le voir. Ne donnez pas les droits supplémentaires pour le seau, seulement les fichiers à l'intérieur.

  3. Configurer votre seau comme un site web. Avec la console AWS ( https://console.aws.amazon.com/s3/ ), vous pouvez sélectionner votre seau, cliquez sur propriétés, puis sélectionnez l'option "Site internet" onglet. Cliquez sur activer et configurer votre document d'index "index.html" et votre message d'erreur "404.html". Vous aurez également besoin de mettre votre seau avec des autorisations d'accès pour autoriser l'accès via le web (http://docs.amazonwebservices.com/AmazonS3/latest/dev/WebsiteAccessPermissionsReqd.html)

  4. Notez le "point final" de l'URL dans le site web de l'onglet configuration. C'est là que votre site web vie. Vous pouvez ouvrir le lien dans une nouvelle fenêtre et vous devriez voir votre site tel qu'il sera. Cliquez sur autour et s'assurer que tout fonctionne comme prévu.

Vous DEVEZ utiliser l'adresse de point de terminaison dans toutes les étapes ci-dessous. La normale www.example.com.s3.amazonaws.com ne fonctionne pas - vous devez utiliser la version régionale (http://www.example.com.s3-website-us-east-1.amazonaws.com/)

Maintenant, nous pouvons configurer le DNS pour vous donner une propre, URL personnalisée.

Tout d'abord, nous allons la carte www.example.com pour votre site.

À l'aide de votre DNS du fournisseur d'outils, (123-reg dans votre cas), vous devez créer un enregistrement CNAME pour la carte www.example.com pour www.example.com.s3-website-us-east-1.amazonaws.com

L'enregistrement CNAME est la seule chose dont vous avez besoin si vous voulez juste www.example.com. La plupart des gens veulent aussi "example.com" le travail donc nous avons besoin d'une autre étape.

example.com il est souvent désigné comme un domaine de niveau supérieur ou de l'apex d'enregistrement du domaine. La reson c'est un problème, c'est qu'il ne peut pas être un CNAME. Cname ne fonctionne que sur des sous-domaines comme "www." Cela le rend plus difficile à s3.

L'approche habituelle consiste à utiliser un service de rediriger automatiquement toute demande d'aller à example.com du point de www.example.com. Ce sera ensuite ramasser votre enregistrement CNAME et votre site sera servi à partir de s3.

La redirection automatique n'est pas possible avec un bon vieux DNS, donc vous devez utiliser un autre service. Certains fournisseurs de DNS offrir ce service avec leurs DNS (godaddy, amazon route53 ne le fait pas. Ce n'est pas sûr 123-reg)

Si votre fournisseur de DNS n'est pas cela, il ya quelques services gratuits. Celui que j'ai utilisé est http://wwwizer.com/naked-domain-redirect - il ne nécessite aucune inscription ou de paiement.

Pour utiliser ce type de service, vous devez créer un enregistrement DNS "A" pour votre domaine de niveau supérieur. Pour l'wwwizer.com service, vous devez créer Un enregistrement a pour point de example.com pour 174.129.25.170. C'est tout!

Ainsi, avec cette configuration, si un utilisateur tape example.com dans leur navigateur, les éléments suivants se produisent:

  1. Requête DNS: example.com -> 174.129.25.170 (wwwizer.com de service)
  2. Requête HTTP à 174.129.25.170 pour example.com
  3. 174.129.25.170 redirige example.com -> www.example.com
  4. Requête DNS: www.example.com -> CNAME pour www.example.com.s3-website-us-east-1.amazonaws.com
  5. Requête DNS: www.example.com.s3-website-us-east-1.amazonaws.com -> points d'Amazon S3
  6. Requête HTTP pour www.example.com est maintenant desservie par Amazon S3

Profitez-en!

1voto

Tim Points 11

Je crois que vous devez sélectionner tous les documents dans votre seau, cliquez avec le bouton droit et de choisir "Public". Vous devez le faire à chaque fois que quelque chose change dans le seau. J'ai ensuite généralement clic droit sur le segment, sélectionnez propriétés, cliquez sur autorisations dans le volet de droite, puis ajouter "tout le monde en tant que "titulaire" puis de leur donner seulement "liste" des autorisations. Le reste de votre article est excellent. La partie sur le nu de domaine m'a aidé à résoudre mes problèmes. Vous pouvez également avoir le nu de domaine redirigé vers le domaine www sein S3 sous "Hébergement de Site Statique" C'est probablement la façon la plus simple. Merci encore à tous pour votre aide.

Tim

0voto

Paul Rowland Points 4045

À partir de l'Avancée des DNS d'écran sur votre 123-reg panneau de contrôle

  • J'ai commencé, en cliquant sur le bouton "Reset DNS" bouton par défaut 123-reg paramètres.

Cela m'a donné la suivante;

Enregistrement DNSde Type PrioritéTTLDestination/Cible
* Un 81.xx.xx.xx
@ Un 81.xx.xx.xx
@ MX 10 xx0.123-reg.co.royaume-uni
@ MX 20 xx1.123-reg.co.royaume-uni

  • Ensuite, j'ai ajouté cette entrée

www CNAME www.example.com.s3-website-us-east-1.amazonaws.com

À partir de leurs Gérer les DNS guide pdf il est dit que le "@ record" se réfère à "votre domaine dans sa forme la plus pure avec aucun sous-domaine" c'est à dire le nu de domaine stackoverflow.com

Mais il ne fait pas mention de ce que les "* enregistrement", j'ai supposé qu'il serait d'attraper tous les sous-domaines et pensé qu'il pourrait plus rouler l'enregistrement CNAME, mais cela ne semble pas être le cas.

0voto

Keerti Points 9

Pour héberger votre site Web S3 à l'aide de l'outil bucket explorer.

Reportez-vous à: Site Web statique hôte

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X