Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
(Facultatif) Configuration de la redirection de pages web
Si votre compartiment Amazon S3 est configuré pour l'hébergement de site web statique, vous pouvez configurer des redirections pour votre compartiment ou les objets qu'il contient. Vous disposez des options suivantes pour configurer des redirections.
Rubriques
Rediriger les demandes pour le point de terminaison de site web de votre compartiment vers un autre compartiment ou domaine
Vous pouvez rediriger toutes les demandes d'un point de terminaison de site web pour un compartiment vers un autre compartiment ou domaine. Si vous redirigez toutes les demandes, chaque demande adressée au point de terminaison de site web est redirigée vers le compartiment ou le domaine spécifié.
Par exemple, si votre domaine racine est example.com
, et que vous souhaitez gérer des demandes pour http://example.com
et http://www.example.com
, vous devez créer deux compartiments nommés example.com
et www.example.com
. Ensuite, gérez le contenu dans le compartiment example.com
et configurez l'autre compartiment www.example.com
de manière à rediriger toutes les demandes vers le compartiment example.com
. Pour plus d’informations, consultez les informations relatives à la configuration d’un site Web statique à l’aide d’un nom de domaine personnalisé.
Pour rediriger des demandes pour un point de terminaison de site Web de compartiment
-
Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/
. -
Sous Buckets (Compartiments), choisissez le nom du compartiment à partir duquel vous souhaitez rediriger les demandes (par exemple,
www.example.com
). -
Choisissez Propriétés.
-
Sous Static website hosting (Hébergement de site web statique), choisissez Edit (Modifier).
-
Choisissez Redirect requests for an object (Rediriger les demandes pour un objet).
-
Dans la zone Host name (Nom d'hôte), entrez le point de terminaison du site web pour votre compartiment ou votre domaine personnalisé.
Par exemple, si vous redirigez les demandes vers une adresse de domaine racine, entrez
example.com
. -
Pour Protocol (Protocole), choisissez le protocole pour les demandes redirigées (none (aucun),http ou https).
Si vous ne spécifiez pas de protocole, l'option par défaut est none (aucun).
-
Sélectionnez Enregistrer les modifications.
Configurer des règles de redirection pour utiliser des redirections conditionnelles avancées
Avec les règles de redirection avancées, vous pouvez acheminer des demandes de façon conditionnelle, en fonction de noms de clés d'objets spécifiques, de préfixes dans la demande ou de codes réponse. A titre d'exemple, supposez que vous supprimiez ou renommiez un objet dans votre compartiment. Vous pouvez ajouter une règle de routage qui redirige la demande vers un autre objet. Si vous souhaitez qu'un dossier ne soit plus accessible, vous pouvez ajouter une règle de routage pour rediriger la demande vers une autre page Web. Vous pouvez également ajouter une règle de routage pour gérer des conditions d'erreur en acheminant les demandes qui renvoient l'erreur vers un autre domaine, où celle-ci sera traitée.
Lorsque vous activez l'hébergement de site web statique pour votre compartiment, vous pouvez éventuellement spécifier des règles de redirection avancées. Amazon S3 impose une limitation de 50 règles de routage par configuration de site web. Si vous avez besoin de plus de 50 règles de routage, vous pouvez utiliser la redirection d'objet. Pour de plus amples informations, veuillez consulter Utilisation de la console S3.
Pour plus d'informations sur la configuration des règles de routage à l'aide du RESTAPI, consultez PutBucketWebsitele Amazon Simple Storage Service API Reference.
Important
Pour créer des règles de redirection dans la nouvelle console Amazon S3, vous devez utiliserJSON. Pour JSON des exemples, voirExemples de règles de redirection.
Pour configurer des règles de redirection pour un site web statique
Pour ajouter des règles de redirection pour un compartiment qui a déjà l'hébergement de site Web statique activé, procédez comme suit.
-
Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/
. -
Dans la liste Compartiments, choisissez le nom d'un compartiment que vous avez configuré en tant que site web statique.
-
Choisissez Propriétés.
-
Sous Static website hosting (Hébergement de site web statique), choisissez Edit (Modifier).
-
Dans la zone Règles de redirection, entrez vos règles de redirection dansJSON.
Dans la console S3, vous décrivez les règles d'utilisation deJSON. Pour JSON des exemples, voirExemples de règles de redirection. Amazon S3 impose une limitation de 50 règles de routage par configuration de site web.
-
Sélectionnez Enregistrer les modifications.
Éléments de règle de routage
Voici la syntaxe générale permettant de définir les règles de routage dans la configuration d'un site Web dans JSON et XML Pour configurer les règles de redirection dans la nouvelle console S3, vous devez utiliserJSON. Pour JSON des exemples, voirExemples de règles de redirection.
Le tableau suivant décrit les éléments de la règle de routage.
Nom | Description |
---|---|
RoutingRules |
Conteneur de l'ensemble des éléments RoutingRule . |
RoutingRule |
Une règle qui identifie une condition et la redirection qui est appliquée quand la condition est respectée. Condition :
|
Condition |
Conteneur de la description de la condition qui doit être respectée pour que la redirection spécifiée soit appliquée. Si la règle de routage ne comprend pas de condition, la règle s'applique à toutes les demandes. |
KeyPrefixEquals |
Le préfixe de nom de la clé d'objet à partir duquel les demandes sont redirigées.
|
HttpErrorCodeReturnedEquals |
Le code HTTP d'erreur qui doit correspondre pour que la redirection s'applique. En cas d'erreur, et si le code d'erreur correspond à cette valeur, la redirection spécifiée est appliquée.
|
Redirect |
Elément du conteneur qui fournit des instructions pour rediriger la demande. Vous pouvez rediriger les demandes vers un autre hôte ou une autre page ; vous pouvez également indiquer un autre protocole d'utilisation. Une règle |
Protocol |
Le protocole, Si l'un des enfants est fourni, |
HostName |
Le nom d'hôte à utiliser dans l'en-tête Si l'un des enfants est fourni, |
ReplaceKeyPrefixWith |
Le préfixe de nom de la clé d'objet qui remplace la valeur de Si l'un des enfants est fourni, |
ReplaceKeyWith |
La clé de l'objet à utiliser dans l'en-tête Si l'un des enfants est fourni, |
HttpRedirectCode |
Le code de HTTP redirection à utiliser dans l' Si l'un des enfants est fourni, |
Exemples de règles de redirection
Les exemples suivants décrivent les tâches de redirection courantes :
Important
Pour créer des règles de redirection dans la nouvelle console Amazon S3, vous devez utiliserJSON.
Exemple 1 : Redirection après renommage du préfixe de clé
Supposez que votre compartiment contienne les objets suivants :
-
index.html
-
docs/article1.html
-
docs/article2.html
Vous décidez de remplacer le nom de dossier docs/
par documents/
. Après avoir fait ce changement, vous devez rediriger les demandes pour le préfixe docs/
vers documents/
. A titre d'exemple, la demande pour docs/article1.html
sera redirigée vers documents/article1.html
.
Dans ce cas, vous ajoutez la règle de routage suivante à la configuration du site web.
Exemple 2 : Redirection des demandes pour un répertoire supprimé vers une page
Supposez que vous supprimiez le dossier images/
(c'est-à-dire tous les objets ayant le préfixe de clé images/
). Vous pouvez ajouter une règle de routage qui redirige les demandes concernant tout objet ayant le préfixe de clé images/
vers une page appelée folderdeleted.html
.
Exemple 3 : Redirection en cas d'HTTPerreur
Supposons que lorsqu'un objet demandé n'est pas trouvé, vous souhaitiez rediriger les demandes vers une instance Amazon Elastic Compute Cloud (AmazonEC2). Ajoutez une règle de redirection afin que lorsqu'un code d'HTTPétat 404 (Not Found)
est renvoyé, le visiteur du site soit redirigé vers une EC2 instance Amazon qui gère la demande.
L'exemple suivant insère également le préfixe de la clé d'objet report-404/
dans la redirection. Par exemple, si vous demandez une page ExamplePage.html
et que cela entraîne une erreur HTTP 404, la demande est redirigée vers une report-404/ExamplePage.html
page de l'EC2instance Amazon spécifiée. S'il n'existe aucune règle de routage et que l'HTTPerreur 404 se produit, le document d'erreur spécifié dans la configuration est renvoyé.
Rediriger les demandes pour un objet
Vous pouvez rediriger les demandes d'un objet vers un autre objet ou URL en définissant l'emplacement de redirection du site Web dans les métadonnées de l'objet. Vous configurez la redirection en ajoutant la propriété x-amz-website-redirect-location
aux métadonnées d'objet. Sur la console Amazon S3, vous définissez l'élément Website Redirect Location (Emplacement de redirection de site web) dans les métadonnées de l'objet. Si vous utilisez Amazon S3 API, vous définissezx-amz-website-redirect-location
. Le site web interprète alors l'objet comme une redirection 301.
Pour rediriger une demande vers un autre objet, vous définissez l'emplacement de redirection vers la clé de l'objet cible. Pour rediriger une demande vers un site externeURL, vous devez définir l'emplacement de redirection URL comme vous le souhaitez. Pour plus d’informations sur les métadonnées d’objet, consultez Métadonnées d'objet définies par le système.
Quand vous définissez une redirection de page, vous pouvez garder ou supprimer le contenu de l'objet source. Par exemple, si vous avez un objet page1.html
dans votre compartiment, vous pouvez rediriger toutes les demandes de cette page vers un autre objet, page2.html
. Vous avez deux options :
-
Conservez le contenu de l'objet
page1.html
et redirigez les demandes de pages. -
Supprimez le contenu de
page1.html
et chargez un objet zéro octet nommépage1.html
pour remplacer l'objet existant et rediriger les demandes de pages.
-
Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/
. -
Dans la liste Buckets (Compartiments), choisissez le nom d'un compartiment que vous avez configuré en tant que site web statique (par exemple,
example.com
). -
Sous Objects (Objets), sélectionnez votre objet.
-
Choisissez Actions, puis Edit metadata (Modifier les métadonnées).
-
Choisissez Métadonnées.
-
Choisissez Add Metadata (Ajouter des métadonnées).
-
Sous Type, choisissez System Defined (Défini par le système).
-
Dans Key, choisissez x-amz-website-redirect-location.
-
Dans Valeur, entrez le nom de clé de l'objet vers lequel vous souhaitez rediriger, par exemple
/page2.html
.Pour un autre objet dans le même compartiment, le préfixe
/
dans la valeur est requis. Vous pouvez également définir la valeur sur une valeur externeURL, par exemple,http://www.example.com
. -
Choisissez Modifier les métadonnées.
Les API actions Amazon S3 suivantes prennent en charge l'x-amz-website-redirect-location
en-tête de la demande. Amazon S3 stocke la valeur de l'en-tête dans les métadonnées de l'objet sous la forme x-amz-website-redirect-location
.
Un bucket configuré pour l'hébergement de sites Web contient à la fois le point de terminaison du site Web et le REST point de terminaison. Une demande pour une page qui est configurée comme une redirection 301 peut engendrer les résultats possibles suivants, selon le point de terminaison de la demande :
-
Point de terminaison de site web propre à une Région – Amazon S3 redirige la demande de page en fonction de la valeur de la propriété
x-amz-website-redirect-location
. -
RESTpoint de terminaison : Amazon S3 ne redirige pas la demande de page. Il renvoie l'objet demandé.
Pour plus d'informations sur les points de terminaison, consultez Principales différences entre un point de terminaison de site Web et un point de REST API terminaison.
Lors de la définition d'une redirection de page, vous pouvez garder ou supprimer le contenu de l'objet source. A titre d'exemple, supposez que vous ayez un objet page1.html
dans votre compartiment.
-
Pour conserver le contenu des demandes de page
page1.html
et uniquement les rediriger, vous pouvez soumettre une demande PUTObject - Copy pour créer un nouvelpage1.html
objet utilisant l'page1.html
objet existant comme source. Dans votre demande, vous définissez l'en-têtex-amz-website-redirect-location
. Lorsque la demande est terminée, la page d'origine et son contenu restent inchangés, cependant Amazon S3 redirige toute demande de la page vers l'emplacement de redirection que vous avez indiqué. -
Pour supprimer le contenu de l'
page1.html
objet et rediriger les demandes vers la page, vous pouvez envoyer une demande d'PUTobjet pour télécharger un objet de zéro octet ayant la même clé d'objet :page1.html
. Dans la PUT demande, vous définissezx-amz-website-redirect-location
page1.html
le nouvel objet. Une fois que la demande est terminée,page1.html
n'a aucun contenu, et les demandes sont redirigées vers l'emplacement qui est spécifié parx-amz-website-redirect-location
.
Lorsque vous récupérez l'objet à l'aide de l'action GETObject, ainsi que d'autres métadonnées de l'objet, Amazon S3 renvoie l'x-amz-website-redirect-location
en-tête dans la réponse.