On dirait que vous avez déjà fait l'essentiel du travail. Pour plus de clarté, je vais reprendre ces étapes juste pour m'assurer que vous êtes correctement configuré:
Créez un bucket s3 en utilisant votre nom de domaine comme nom de bucket (votre nom de bucket doit être www.example.com si vous souhaitez que votre site soit example.com ou www.example.com)
Téléchargez votre contenu dans le compartiment s3. Choisissez un nom cohérent pour les fichiers d'index de votre site Web (généralement index.html). Vous pouvez également télécharger une page personnalisée pour les erreurs 404 Not Found. Appelez ce 404.html. Accordez des autorisations de lecture à chaque fichier de votre site Web afin que le public puisse le consulter. N'accordez aucune autorisation supplémentaire au bucket, uniquement aux fichiers qu'il contient.
Configurez votre bucket en tant que site Web. Avec la console AWS ( https://console.aws.amazon.com/s3/ ), vous pouvez sélectionner votre bucket, cliquer sur les propriétés, puis sélectionner l'onglet "Site Web". Cliquez sur activé et définissez votre document d'index sur "index.html" et votre document d'erreur sur "404.html". Vous devrez également définir votre compartiment avec des autorisations d'accès pour autoriser l'accès via le Web ( http://docs.amazonwebservices.com/AmazonS3/latest/dev/WebsiteAccessPermissionsReqd.html )
Notez l'URL "Endpoint" dans l'onglet de configuration du site Web. C'est là que vit votre site Web. Vous pouvez ouvrir le lien dans une nouvelle fenêtre et vous devriez voir votre site Web tel qu'il apparaîtra. Cliquez autour et assurez-vous que tout fonctionne comme prévu.
Vous DEVEZ utiliser l'adresse du point final dans toutes les étapes ci-dessous. Le site www.example.com.s3.amazonaws.com normal ne fonctionnera 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 URL propre et personnalisée.
Tout d'abord, nous mapperons www.example.com sur votre site.
À l'aide des outils de votre fournisseur DNS (123-reg dans votre cas), vous devez créer un enregistrement CNAME pour mapper www.example.com à www.example.com.s3-website-us-east-1.amazonaws.com
Le CNAME est la seule chose dont vous avez besoin si vous voulez juste www.example.com. La plupart des gens veulent également que "example.com" fonctionne, nous avons donc besoin d'une autre étape.
example.com est souvent appelé un domaine nu ou l'enregistrement apex du domaine. La raison pour laquelle c'est un problème est qu'il ne peut pas s'agir d'un CNAME. Les CNAME ne fonctionnent que sur des sous-domaines tels que "www." Cela rend plus difficile de pointer vers s3.
L'approche habituelle consiste à utiliser un service pour rediriger automatiquement toute demande allant à example.com pour pointer vers www.example.com. Cela récupérera ensuite votre enregistrement CNAME et votre site sera servi à partir de s3.
La redirection automatique n'est pas possible avec un DNS ancien, vous devez donc utiliser un autre service. Certains fournisseurs DNS offrent ce service avec leur DNS (godaddy le fait, amazon route53 ne le fait pas. Je ne suis pas sûr de 123-reg)
Si votre fournisseur DNS ne le fait pas, il existe quelques services gratuits. Celui que j'ai utilisé est http://wwwizer.com/naked-domain-redirect - il ne nécessite aucune inscription ni paiement.
Pour utiliser ce type de service, vous devez créer un enregistrement DNS «A» pour votre domaine nu. Pour le service wwwizer.com, vous devez créer un enregistrement A pour pointer example.com vers 174.129.25.170. C'est tout!
Ainsi, avec cette configuration, si un utilisateur tape example.com dans son navigateur, ce qui suit se produit:
- Requête DNS: example.com -> 174.129.25.170 (service wwwizer.com)
- Requête HTTP à 174.129.25.170 pour example.com
- 174.129.25.170 redirections example.com -> www.example.com
- Requête DNS: www.example.com -> CNAME vers www.example.com.s3-website-us-east-1.amazonaws.com
- Requête DNS: www.example.com.s3-website-us-east-1.amazonaws.com -> pointe vers Amazon S3
- La requête HTTP pour www.example.com est désormais servie par Amazon S3
Prendre plaisir!