Activation de l'hébergement de sites web - Amazon Simple Storage Service

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.

Activation de l'hébergement de sites web

Lorsque vous configurez un compartiment en tant que site Web statique, vous devez activer l'hébergement de sites Web statiques, configurer un document d'index et définir des autorisations.

Vous pouvez activer l'hébergement de sites web statiques à l'aide de la console Amazon S3, d'une API REST, de kits SDK AWS, de la AWS CLI ou de AWS CloudFormation.

Pour configurer votre site Web avec un domaine personnalisé, veuillez consulter Tutoriel : configuration d'un site Web statique à l'aide d'un domaine personnalisé enregistré auprès de Route 53.

Pour activer l'hébergement de site Web statique
  1. Connectez-vous à la AWS Management Console et ouvrez la console Simple Storage Service (Amazon S3) à la page https://console.aws.amazon.com/s3/.

  2. Dans la liste Buckets (Compartiments), choisissez le nom du compartiment pour lequel vous souhaitez activer l'hébergement de sites web statiques.

  3. Choisissez Propriétés.

  4. Sous Static website hosting (Hébergement de site Web statique), choisissez Edit (Modifier).

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

  6. Sous Static website hosting (Hébergement de site web statique), choisissez Enable (Activer).

  7. Dans Index document (Document d'index), entrez le nom du document d'index, généralement index.html.

    Le nom du document d'index est sensible à la casse et doit correspondre exactement au nom de fichier du document d'index HTML que vous prévoyez de charger dans votre compartiment S3. Lorsque vous configurez un compartiment pour l'hébergement d'un site web, vous devez indiquer un document d'index. Amazon S3 renvoie ce document d'index lorsque des demandes sont faites dans le domaine racine ou dans n'importe quel sous-dossier. Pour plus d’informations, consultez Configuration d'un document d'index.

  8. Pour fournir votre propre document d'erreur personnalisé pour les erreurs de classe 4XX, entrez le nom du fichier du document d'erreur personnalisé dans Document d'erreur.

    Le nom du document d'erreur est sensible à la casse et doit correspondre exactement au nom de fichier du document d'erreur HTML que vous prévoyez de charger dans votre compartiment S3. Si vous ne spécifiez pas de document d'erreur personnalisé et qu'une erreur se produit, Amazon S3 renvoie un document d'erreur HTML par défaut. Pour plus d’informations, consultez Configuration d'un document d'erreur personnalisé.

  9. (Facultatif) Si vous souhaitez spécifier des règles de redirection avancées, décrivez les règles à l'aide du langage JSON dans Redirection rules (Règles de redirection).

    Par exemple, vous pouvez acheminer les demandes de façon conditionnelle en fonction des noms ou préfixes de clés d'objets dans la demande. Pour plus d’informations, consultez Configurer des règles de redirection pour utiliser des redirections conditionnelles avancées.

  10. Choisissez Enregistrer les modifications.

    Amazon S3 permet l'hébergement de site web statique pour votre compartiment. Au bas de la page, sous Static website hosting (Hébergement de site Web statique), vous voyez le point de terminaison du site web pour votre compartiment.

  11. Sous Static website hosting (Hébergement de site Web statique), notez la valeur de Endpoint (Point de terminaison).

    Endpoint (Point de terminaison) correspond au point de terminaison du site web Amazon S3 de votre compartiment. Une fois que vous avez terminé de configurer votre compartiment en tant que site Web statique, vous pouvez utiliser ce point de terminaison pour tester votre site Web.

Pour plus d'informations sur l'envoi direct de demandes REST afin d'activer l'hébergement de site Web statique, consultez les sections suivantes dans le manuel Référence d'API Amazon Simple Storage Service :

Pour héberger un site web statique dans Amazon S3, vous configurez un compartiment Amazon S3 pour l'hébergement de site web, puis vous chargez le contenu du site web dans le compartiment. Vous pouvez également utiliser les kits SDK AWS pour créer, mettre à jour et supprimer la configuration du site web par programmation. Les kits SDK fournissent des classes de type Wrapper autour de l'API REST Amazon S3. Vous pouvez envoyer des demandes d'API REST directement à partir de l'application, si cette dernière l'exige.

.NET

L'exemple suivant montre comment utiliser le kit AWS SDK for .NET pour gérer la configuration de site Web pour un compartiment. Pour ajouter une configuration de site Web à un compartiment, vous fournissez un nom de compartiment et une configuration de site Web. La configuration de site Web doit comprendre un document d'index et peut contenir un rapport d'erreur facultatif. Ces documents doivent être stockés dans le compartiment. Pour plus d’informations, consultez PUT Bucket website. Pour plus d’informations sur la fonctionnalité du site Web Amazon S3, consultez Hébergement d'un site Web statique à l'aide d'Amazon S3.

L'exemple de code C# suivant ajoute une configuration de site Web sur le compartiment spécifié. La configuration spécifie les noms du document d'index et du rapport d'erreur. Pour obtenir des instructions sur la façon de créer et de tester un exemple pratique, consultez Exécution des exemples de code .NET Amazon S3.

using Amazon; using Amazon.S3; using Amazon.S3.Model; using System; using System.Threading.Tasks; namespace Amazon.DocSamples.S3 { class WebsiteConfigTest { private const string bucketName = "*** bucket name ***"; private const string indexDocumentSuffix = "*** index object key ***"; // For example, index.html. private const string errorDocument = "*** error object key ***"; // For example, error.html. // Specify your bucket region (an example region is shown). private static readonly RegionEndpoint bucketRegion = RegionEndpoint.USWest2; private static IAmazonS3 client; public static void Main() { client = new AmazonS3Client(bucketRegion); AddWebsiteConfigurationAsync(bucketName, indexDocumentSuffix, errorDocument).Wait(); } static async Task AddWebsiteConfigurationAsync(string bucketName, string indexDocumentSuffix, string errorDocument) { try { // 1. Put the website configuration. PutBucketWebsiteRequest putRequest = new PutBucketWebsiteRequest() { BucketName = bucketName, WebsiteConfiguration = new WebsiteConfiguration() { IndexDocumentSuffix = indexDocumentSuffix, ErrorDocument = errorDocument } }; PutBucketWebsiteResponse response = await client.PutBucketWebsiteAsync(putRequest); // 2. Get the website configuration. GetBucketWebsiteRequest getRequest = new GetBucketWebsiteRequest() { BucketName = bucketName }; GetBucketWebsiteResponse getResponse = await client.GetBucketWebsiteAsync(getRequest); Console.WriteLine("Index document: {0}", getResponse.WebsiteConfiguration.IndexDocumentSuffix); Console.WriteLine("Error document: {0}", getResponse.WebsiteConfiguration.ErrorDocument); } catch (AmazonS3Exception e) { Console.WriteLine("Error encountered on server. Message:'{0}' when writing an object", e.Message); } catch (Exception e) { Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message); } } } }
PHP

L'exemple PHP suivant ajoute une configuration de site Web au compartiment spécifié. La méthode create_website_config fournit explicitement les noms du document d'index et du rapport d'erreur. L'exemple récupère également la configuration de site Web et affiche la réponse. Pour de plus amples informations sur la fonction Amazon S3 website, veuillez consulter Hébergement d'un site Web statique à l'aide d'Amazon S3.

Pour obtenir les instructions sur la création et le test d'un exemple pratique, consultez Utilisation du kit AWS SDK for PHP et exécution d'exemples PHP.

require 'vendor/autoload.php'; use Aws\S3\S3Client; $bucket = '*** Your Bucket Name ***'; $s3 = new S3Client([ 'version' => 'latest', 'region' => 'us-east-1' ]); // Add the website configuration. $s3->putBucketWebsite([ 'Bucket' => $bucket, 'WebsiteConfiguration' => [ 'IndexDocument' => ['Suffix' => 'index.html'], 'ErrorDocument' => ['Key' => 'error.html'] ] ]); // Retrieve the website configuration. $result = $s3->getBucketWebsite([ 'Bucket' => $bucket ]); echo $result->getPath('IndexDocument/Suffix'); // Delete the website configuration. $s3->deleteBucketWebsite([ 'Bucket' => $bucket ]);

Pour plus d’informations sur l’utilisation de la AWS CLI pour configurer un compartiment S3 en tant que site web statique, consultez Site internet dans la Référence des commandes de la AWS CLI.

Ensuite, vous devez configurer le document d'index et définir les autorisations. Pour plus d'informations, consultez Configuration d'un document d'index et Définition des autorisations pour l'accès au site web.

Vous pouvez également configurer un document d'erreur, la journalisation du trafic web ou une redirection.