Amazon Simple Storage Service
Manuel du développeur (Version de l'API 2006-03-01)

Exemple : configuration d'un site Web statique grâce à un domaine personnalisé

Admettons que vous souhaitiez héberger un site Web statique sur Amazon S3. Vous avez enregistré un domaine (par exemple, example.com) et vous souhaitez que les demandes pour http://www.example.com et http://example.com soient traitées à partir de votre contenu Amazon S3. Que vous possédiez un site web statique existant que vous souhaitez désormais héberger sur Amazon S3 ou que vous partiez de zéro, servez-vous de cet exemple pour savoir comment héberger des sites web et créer des redirections sur Amazon S3.

Avant de commencer

À mesure que vous suivez les étapes de cet exemple, vous utilisez les services suivants :

Amazon Route 53 – Utilisez Route 53 pour enregistrer les domaines et définir où acheminer le trafic Internet pour votre domaine. Cet exemple montre comment créer des enregistrements d'alias Route 53 qui acheminent le trafic pour votre domaine (example.com) et votre sous-domaine (www.example.com) vers un compartiment Amazon S3 qui contient un fichier HTML.

Amazon S3 – Utilisez Amazon S3 pour créer des compartiments, charger un exemple de page de site web, configurer des autorisations pour permettre à tout le monde de voir le contenu et configurer les compartiments pour l'hébergement du site web.

Étape 1 : enregistrez un domaine

Si vous ne disposez pas déjà d'un nom de domaine enregistré comme example.com, enregistrez-en un avec Route 53. Pour plus d'informations, consultez Enregistrement d'un nouveau domaine dans le Amazon Route 53 Manuel du développeur. Une fois le nom de domaine enregistré, les prochaines tâches consistent à créer et à configurer des compartiments Amazon S3 pour héberger le site Web et charger son contenu.

Étape 2 : créer et configurer des compartiments, puis charger le contenu du site web

Pour prendre en charge les demandes du domaine racine (par exemple, example.com) et du sous-domaine (par exemple, www.example.com), vous créez deux compartiments. Vous hébergez le contenu en dehors du compartiment du domaine racine (example.com), et vous créez une demande de redirection pour le deuxième compartiment (www.example.com). La demande de redirection redirige les utilisateurs qui essayent d'accéder à www.example.com vers le domaine racine. En d'autres termes, si quelqu'un entre dans www.example.com dans son navigateur, il est redirigé vers example.com et voit le contenu hébergé dans le compartiment Amazon S3 portant ce nom.

Étape 2.1 : créez deux compartiments

Les noms de compartiment doivent correspondre au nom du site web que vous hébergez. Par exemple, pour héberger le site web example.com sur Amazon S3, vous devez créer un compartiment sous le nom example.com. A l'instar de domaines, les sous-domaines doivent avoir leurs propres compartiments S3, et les compartiments doivent porter exactement le même nom que les sous-domaines. Dans cet exemple, vous créez le sous-domaine www.example.com. Vous avez donc également besoin d'un compartiment S3 nommé www.example.com. Votre site web prend en charge les demandes provenant de example.com et www.example.com.

Dans cette étape, vous vous connectez à la console Amazon S3 avec les informations d'identification du compte AWS et vous créez les deux compartiments suivants.

  • example.com

  • www.example.com

Pour créer vos compartiments et charger le contenu de votre site Web à héberger

Pour obtenir des instructions pas à pas, consultez Comment créer un compartiment S3 ? dans le Amazon Simple Storage Service Guide de l'utilisateur de la console.

  1. Connectez-vous à AWS Management Console et ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/.

  2. Créez deux compartiments qui correspondent au nom de domaine et au sous-domaine (par exemple, example.com et www.example.com).

Dans l'étape suivante, vous configurez example.com pour l'hébergement de site web.

Étape 2.2 : configurer un compartiment de domaine pour l'hébergement de site web

Lorsque vous configurez un compartiment pour l'hébergement de site Web, vous pouvez accéder au site Web grâce au point de terminaison du site Web du compartiment attribué par Amazon S3.

Au cours de cette étape, vous configurez example.com comme site web. Ce compartiment contient le contenu de votre site web.

Pour configurer le compartiment pour l'hébergement de site web

  1. Dans la console Amazon S3, dans la liste de compartiments S3, choisissez le compartiment portant le même nom que votre domaine.

    Le compartiment nommé d'après votre domaine contient le contenu du site web.

  2. Choisissez Propriétés.

  3. Choisissez Hébergement de site Web statique.

  4. Choisissez Utiliser ce compartiment pour héberger un site Web.

  5. Dans la zone Document d'index, tapez le nom de votre page d'index.

    Le nom de fichier de la page d'accueil d'un site web est généralement index.html, mais vous pouvez lui donner n'importe quel nom. Dans Étape 2.5 : charger l'index et le contenu du site web, vous chargerez le document index.html pour votre site web statique. Si vous n'avez pas créé un site web, les instructions pour la création du document index.html figurent dans Étape 2.5 : charger l'index et le contenu du site web.

  6. Choisissez Save.

Au cours de l'étape suivante, vous configurez votre sous-domaine (www.example.com) pour rediriger les demandes vers votre domaine (www.example.com).

Étape 2.3 : configurer un sous-domaine pour la redirection de site web

Maintenant que vous avez configuré le compartiment de votre domaine pour l'hébergement de site web, vous pouvez configurer le compartiment de votre sous-domaine pour rediriger toutes les demandes vers le domaine. Dans cet exemple, toutes les demandes pour www.example.com sont redirigées vers example.com.

Pour rediriger les demandes de www.example.com vers example.com

  1. Dans la console Amazon S3, dans la liste de compartiments S3, choisissez le compartiment de votre sous-domaine (www.example.com, dans cet exemple).

  2. Choisissez Propriétés.

  3. Choisissez Hébergement de site Web statique.

  4. Choisissez Rediriger les demandes.

  5. Dans la zone Domaine ou compartiment cible, entrez votre domaine (par exemple, example.com).

  6. Dans la zone Protocole, entrez http.

  7. Choisissez Save.

Étape 2.4 : configurez la journalisation pour le trafic du site web

Vous pouvez éventuellement configurer la journalisation pour effectuer le suivi du nombre de visiteurs accédant à votre site web. Pour ce faire, activez la journalisation pour le compartiment de domaine racine. Pour plus d'informations, consultez (Facultatif) Configuration de la journalisation du trafic web.

Étape 2.5 : charger l'index et le contenu du site web

Maintenant que vous avez configuré le compartiment de votre domaine racine pour l'hébergement du site web et le compartiment de votre sous-domaine pour la redirection, vous pouvez charger votre document d'index et le contenu de site web facultatif dans votre compartiment de domaine racine. Le contenu peut consister en des fichiers texte, des photos de famille, des vidéos : ce que vous voulez. Si vous n'avez pas encore créé de site web, vous n'avez donc besoin que du fichier d'index pour cet exemple. Dans Étape 2.2 : configurer un compartiment de domaine pour l'hébergement de site web, vous avez entré le nom du document d'index. Le fichier HTML que vous chargez dans votre compartiment pour tenir lieu d'index de site web doit avoir le même nom de fichier.

Vous pouvez créer votre fichier index.html avec le HTML suivant, puis le charger dans le compartiment qui hébergera le site web. Dans cet exemple, vous chargez le document index.html dans le compartiment du domaine (example.com) qui servira le contenu du site web.

<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>My Website Home Page</title> </head> <body> <h1>Welcome to my website</h1> <p>Now hosted on Amazon S3!</p> </body> </html>

Pour charger l'index et le contenu du site web

  1. Chargez votre document d'index dans le compartiment du domaine racine (par exemple, example.com).

  2. (Facultatif) Chargez votre contenu de site web dans le compartiment du domaine racine (par exemple, example.com).

Pour obtenir des instructions pas à pas, consultez Comment charger un objet dans un compartiment S3 ? dans le Amazon Simple Storage Service Guide de l'utilisateur de la console.

Étape 2.6 : modifier les paramètres de blocage de l'accès publique

Le compartiment que vous utilisez pour héberger un site web doit avoir un accès en lecture public. Il est souhaité que chacun dans le monde dispose d'un accès en lecture à ce compartiment. Par défaut, Amazon S3 bloque l'accès publique à votre compte et à vos compartiments. Pour accorder l'accès public en lecture, vous devez désactiver le blocage de l'accès public du compartiment et écrire une stratégie de compartiment qui autorise l'accès public en lecture. Dans cet exemple, example.com contient le contenu du site web. Vous devez donc rendre ce compartiment lisible publiquement.

Avertissement

Lorsque vous désactivez tous les paramètres de blocage de l'accès public et que vous ajoutez une stratégie de compartiment qui permet l'accès en lecture public vers un compartiment, le compartiment est accessible publiquement pour toute personne connectée à Internet. Confirmez votre intention de rendre public votre compartiment.

Pour modifier les paramètres de blocage de l'accès publique

  1. Sélectionnez le compartiment du domaine (par exemple, example.com), puis choisissez Edit public access settings (Modifier les paramètres de l'accès public).

  2. Effacez Block all public access (Bloquer tous les accès publics) et choisissez Save (Enregistrer).

    
							Capture d'écran des paramètres de blocage de l'accès publique montrant la case à cocher de blocage de tout l'accès public désactivée.
  3. Confirmez vos modifications.

    Sous S3 buckets (Compartiments S3), l'Access (Accès) de votre compartiment devient Objects can be public (Les objets peuvent être publics). Vous pouvez désormais ajouter une stratégie de compartiment pour rendre les objets du compartiment lisibles publiquement. Si l'Access (Accès) continue de s'afficher comme Bucket and objects not public (Compartiment et objets non publics), vous devrez peut-être modifier les paramètres de blocage de l'accès public pour votre compte.

Étape 2.7 : attacher une stratégie de compartiment

Après avoir modifié les paramètres de blocage d'accès public pour le compartiment de votre domaine racine, vous pouvez attacher une stratégie de compartiment qui accorde l'accès en lecture public. Vous devez ajouter la stratégie de compartiment au compartiment du domaine racine qui contient votre contenu de site web, le même compartiment que celui pour lequel vous avez désactivé le blocage d'accès public. Dans cet exemple, vous attachez une stratégie de compartiment au compartiment example.com.

  • Pour accorder un accès public en lecture, attachez la stratégie de compartiment suivante au compartiment que vous utilisez pour héberger votre site web en remplaçant le nom de votre compartiment par example.com.

    Pour obtenir des instructions pas à pas sur la façon d'attacher une stratégie de compartiment, consultez Comment ajouter une stratégie de compartiment S3 ? dans le Amazon Simple Storage Service Guide de l'utilisateur de la console.

    { "Version":"2012-10-17", "Statement":[ { "Sid":"PublicReadGetObject", "Effect":"Allow", "Principal":"*", "Action":[ "s3:GetObject" ], "Resource":[ "arn:aws:s3:::example.com/*" ] } ] }

    Une fois que vous avez ajouté une stratégie de compartiment, sous S3 buckets (Compartiments S3), l'Access (Accès) de votre compartiment devient Public. Si Access (Accès) a pour valeur Only authorized users of this account (Seuls les utilisateurs autorisés de ce compte), vous devrez peut-être modifier les paramètres de blocage d'accès public pour votre compte.

    Important

    La stratégie précédente est uniquement un exemple et autorise un accès complet au contenu de votre compartiment. Pour plus d'informations sur les bonnes pratiques de sécurité, consultez Comment sécuriser les fichiers dans mon compartiment Amazon S3 ?

    Au cours de l'étape suivante, vous pouvez déterminer vos points de terminaison de site web et tester le point de terminaison de votre domaine.

Étape 2.8 : obtenir vos points de terminaison et tester le point de terminaison de votre domaine

Une fois que vous avez configuré le compartiment de votre domaine pour héberger un site web public, ainsi que le compartiment de votre sous-domaine pour la redirection, vous pouvez déterminer vos points de terminaison de site web et tester le point de terminaison de votre domaine. Pour plus d'informations sur comment déterminer vos points de terminaison de site web, consultez Points de terminaison des sites Web. Si le compartiment de domaine example.com réside dans la région USA Ouest (Oregon), le point de terminaison de site web Amazon S3 serait comme suit :

http://example.com.s3-website-us-west-2.amazonaws.com/

Si le compartiment du sous-domaine www.example.com réside dans la même région, le point de terminaison de site web serait comme suit :

http://www.example.com.s3-website-us-west-2.amazonaws.com/

Pour tester le point de terminaison du domaine

  • Pour tester le point de terminaison de votre domaine, saisissez l'URL du point de terminaison dans le navigateur.

    Le navigateur doit afficher le document d'index que vous avez chargé dans le compartiment.

Dans l'étape suivante, vous utilisez Amazon Route 53 pour permettre aux clients d'utiliser vos deux URL personnalisées pour naviguer vers le site.

Étape 3 : ajoutez des enregistrements d'alias pour example.com et www.example.com

Dans cette étape, vous créez les enregistrements d'alias que vous ajoutez à la zone hébergée pour que le domaine mappe example.com et www.example.com. Au lieu d'utiliser des adresses IP, les enregistrements d'alias utilisent les points de terminaison de site web Amazon S3. Amazon Route 53 maintient un mappage entre les enregistrements d'alias et les adresses IP où résident les compartiments Amazon S3. Vous créez deux enregistrements d'alias, l'un pour votre domaine racine et l'autre pour votre sous-domaine.

Pour ajouter un enregistrement d'alias pour votre domaine racine (example.com)

  1. Ouvrez la console Route 53 à l'adresse https://console.aws.amazon.com/route53/.

    Note

    Si vous n'utilisez pas déjà Route 53, consultez Étape 1 : Enregistrer un domaine dans le Amazon Route 53 Manuel du développeur. Une fois la configuration terminée, vous pouvez reprendre les instructions.

  2. Choisissez Hosted Zones (Zones hébergées).

  3. Dans la liste des zones hébergées, choisissez le nom de la zone hébergée qui correspond au nom de votre domaine.

  4. Choisissez Create Record Set (Créer un ensemble d'enregistrements).

  5. Indiquez l'une des valeurs suivantes :

    Nom

    Acceptez la valeur par défaut, à savoir le nom de votre zone hébergée et de votre domaine.

    Pour le domaine racine, vous n'avez pas besoin d'entrer des informations supplémentaires dans le champ Name (Nom).

    Type

    Choisissez A – adresse IPv4.

    Alias

    Choisissez Oui.

    Cible d'alias

    Dans la section S3 website endpoints (Points de terminaison de site web S3) de la liste, choisissez le même nom de compartiment que celui qui apparaît dans le champ Name (Nom), par exemple example.com (s3-website-us-west-2).

    Stratégie de routage

    Acceptez la valeur par défaut Simple.

    Évaluer l’état de la cible

    Acceptez la valeur par défaut de No.

    La capture d'écran suivante montre l'enregistrement d'alias pour le domaine racine, example.com :

    
						Capture d'écran montrant l'enregistrement d'alias pour le domaine racine.
  6. Sélectionnez Create.

Pour ajouter un enregistrement d'alias pour votre sous-domaine (www.example.com)

  1. Dans la zone hébergée pour votre domaine racine (example.com), choisissez Create Record Set (Créer un jeu d'enregistrements).

  2. Indiquez l'une des valeurs suivantes :

    Nom

    Pour le sous-domaine, entrez www dans la zone.

    Type

    Choisissez A – adresse IPv4.

    Alias

    Choisissez Oui.

    Cible d'alias

    Dans la section S3 website endpoints (Points de terminaison de site web S3) de la liste, choisissez le même nom de compartiment que celui qui apparaît dans le champ Name (Nom), par exemple www.example.com (s3-website-us-west-2).

    Stratégie de routage

    Acceptez la valeur par défaut Simple.

    Évaluer l’état de la cible

    Acceptez la valeur par défaut de No.

    La capture d'écran suivante montre l'enregistrement d'alias pour www.example.com, le sous-domaine :

    
						Capture d'écran montrant l'enregistrement d'alias pour le sous-domaine.
  3. Sélectionnez Create.

Note

Les changements se propagent généralement sur tous les serveurs Route 53 en 60 secondes. Lorsque la propagation est terminée, vous êtes en mesure d'acheminer le trafic vers votre compartiment Amazon S3 en utilisant le nom de l'enregistrement d'alias que vous avez créé au cours de cette procédure.

Étape 4 : tester le site web

Vérifiez que le site web et la redirection fonctionnent correctement. Dans votre navigateur, entrez vos URL. Dans cet exemple, vous testez les URL suivantes :

  • http://example.com – Affiche le document d'index dans le compartiment example.com.

  • http://www.example.com – Redirige votre demande vers http://example.com. Vous voyez le document d'index dans le compartiment example.com.

Dans certains cas, il se peut que vous ayez besoin de vider le cache de votre navigateur web pour observer le comportement attendu.