Configurer l’hébergement de site web statique

L’hébergement web statique sert les objets du bucket comme pages ou fichiers et peut rediriger les demandes des visiteurs. Configurer l’hébergement n’envoie aucun fichier et ne modifie pas les permissions d’accès aux objets.

Prérequis et conséquences

L’onglet Static website hosting concerne un seul bucket à usage général dont la politique autorise la lecture. Ouvrez File > Accounts…, sélectionnez le compte, cliquez sur Edit…, puis ouvrez Capabilities. Dans Static website hosting, configurez la politique et ses affectations pour le bucket. Activez uniquement les fonctions prises en charge par le service : lecture, écriture, suppression, redirection globale et règles de routage.

Dans Features, GetBucketWebsite autorise la consultation, PutBucketWebsite la création ou le remplacement, DeleteBucketWebsite la suppression, RedirectAllRequestsTo la redirection globale et RoutingRules les règles de routage. Voir les capacités du compte. Une lecture réussie est nécessaire avant toute modification ou suppression. Sans écriture, les champs sont consultables ; Disabled reste utilisable pour supprimer une configuration existante si la suppression est autorisée.

Sur Amazon S3, les permissions correspondantes sont s3:GetBucketWebsite, s3:PutBucketWebsite et s3:DeleteBucketWebsite. Elles ne donnent pas aux visiteurs le droit de lire les objets. L’accès public doit être autorisé séparément, en tenant compte des règles d’accès public du compte et du bucket.

Passer d’un mode à un autre remplace la configuration web complète. Disabled la supprime ; les objets et leurs permissions sont conservés.

Choisir le mode

  1. Dans le panneau S3, sélectionnez le bucket.
  2. Ouvrez Properties > Static website hosting.
  3. Attendez la lecture de Remote configuration.
  4. Choisissez l’une des valeurs de Mode:.
    • Disabled retire la configuration.
    • Host a website sert des documents.
    • Redirect all requests redirige toutes les demandes.
  5. Renseignez les champs du mode choisi, puis enregistrez comme indiqué ci-dessous.

Les modes et champs peuvent être désactivés si la politique du compte n’autorise pas leur écriture.

Sans configuration distante, Disabled est sélectionné, les documents et l’hôte sont vides, aucune règle n’est définie et Destination protocol vaut Keep request protocol. S3Client ne propose pas automatiquement index.html. Les changements restent locaux jusqu’à OK dans les propriétés.

Servir des documents

Dans Website hosting, Index document est obligatoire : saisissez un nom tel que index.html, sans barre oblique. Cochez Error document pour définir une clé d’objet non vide, éventuellement dans un préfixe, telle que errors/404.html. Décochez cette option pour ne pas configurer de document d’erreur.

Les objets correspondants doivent déjà exister ou être envoyés séparément. Les noms et clés sont sensibles à la casse.

Rediriger toutes les demandes

Renseignez Destination host avec un nom d’hôte, par exemple www.example.com, sans schéma, chemin, port ou identifiants. Destination protocol propose Keep request protocol, http et https. Le premier conserve le protocole de la demande. Ce mode remplace les documents et règles du mode d’hébergement.

Configurer les règles de routage

Dans Host a website, utilisez la liste Routing rules. Au plus 50 règles sont acceptées.

  1. Cliquez sur Add pour ouvrir Website routing rule.
  2. Activez, si nécessaire, Key prefix condition ou HTTP error condition, puis renseignez le préfixe ou un code HTTP de trois chiffres compris entre 100 et 599. Avec les deux conditions, les deux doivent correspondre ; sans condition, la règle s’applique sans ce filtre.
  3. Configurez au moins un effet de redirection parmi Destination host, Destination protocol, HTTP redirect code, Replace key prefix with ou Replace entire key with.
  4. Si vous indiquez un hôte, utilisez un nom d’hôte seul. Si vous indiquez un code de redirection, saisissez un code de trois chiffres compris entre 100 et 599.
  5. Choisissez un seul remplacement : préfixe ou clé complète. Une chaîne de remplacement vide peut servir à retirer un préfixe.
  6. Cliquez sur OK.
  7. Sélectionnez une règle pour utiliser Edit, Remove, Move up ou Move down.

Cochez la case de chaque champ optionnel que vous voulez appliquer. Une nouvelle règle commence sans condition ni effet de redirection, avec Keep request protocol. Ce choix conserve le protocole mais ne constitue pas, à lui seul, un effet : renseignez un autre champ ou choisissez http ou https. Une saisie invalide affiche un diagnostic et empêche de fermer le dialogue avec OK.

L’ordre de la liste est conservé lors de l’écriture et détermine la priorité des règles correspondantes. Le document XML généré ne doit pas dépasser 128 KiB et doit contenir des caractères XML valides.

Enregistrer et vérifier

  1. Vérifiez le mode, les noms de documents, les destinations et l’ordre des règles.
  2. Cliquez sur OK dans les propriétés.
  3. Confirmez la suppression ou le remplacement complet lorsqu’il est demandé.
  4. Attendez la fin de l’opération, puis rouvrez l’onglet pour relire la configuration.
  5. Depuis l’adresse web fournie par le service, vérifiez un document et les redirections attendues. S3Client ne crée pas de nom de domaine ni de configuration DNS.

Utilisez l’adresse du site web fournie par le service, distincte de l’endpoint de l’API S3 et des liens d’accès aux objets décrits dans les adresses et liens. Sur Amazon S3, l’endpoint de site web accepte HTTP, pas HTTPS ; choisir https comme protocole de destination configure une redirection, pas HTTPS sur le bucket. Les buckets Requester Pays ne sont pas accessibles par cet endpoint. Voir les endpoints web AWS.

Vérifiez aussi Content-Type sur vos documents, par exemple text/html. La redirection propre à un objet, x-amz-website-redirect-location, se configure séparément dans les métadonnées de l’objet.

Une réponse web refusée peut venir des permissions des objets, même si la configuration a été enregistrée.

View XML… affiche la configuration distante en XML, sans permettre de la modifier. Unsupported configuration signifie que S3Client ne peut pas l’éditer. Avec Replace configuration, vous préparez une nouvelle configuration qui remplacera entièrement l’ancienne à l’enregistrement, y compris ses éléments non affichés. Keep remote configuration abandonne seulement vos changements d’hébergement web et reprend la configuration chargée ; les changements préparés dans les autres onglets sont conservés.

Avant l’écriture, S3Client vérifie les modifications concurrentes. Reload remote configuration recharge la version distante en abandonnant vos changements locaux ; Replace remote configuration applique vos valeurs après confirmation ; Cancel interrompt l’enregistrement. Si le compte a changé ou si la lecture échoue, rouvrez les propriétés après correction.

Un autre client peut encore modifier la configuration entre cette vérification et l’enregistrement. Si vous modifiez plusieurs onglets, une opération déjà réussie n’est pas annulée lorsqu’une opération suivante échoue : relisez les réglages réellement enregistrés avant de recommencer.