Ce tutoriel explique comment configurer un bucket Cloud Storage afin d'héberger un site Web statique pour un domaine dont vous êtes propriétaire. Les pages Web statiques peuvent contenir des technologies côté client telles que HTML, CSS et JavaScript. Elles ne peuvent pas comporter de contenu dynamique tel que des scripts côté serveur comme PHP.
Cloud Storage n'étant pas compatible avec les domaines personnalisés qui n'acceptent que le protocole HTTPS, ce tutoriel utilise Cloud Storage avec l'équilibrage de charge HTTP(S) pour diffuser du contenu à partir d'un domaine personnalisé via HTTPS. Pour découvrir d'autres façons de diffuser du contenu depuis un domaine personnalisé via HTTPS, consultez la rubrique de dépannage associée. Vous pouvez également diffuser du contenu de domaine personnalisé via HTTP à l'aide de Cloud Storage sans avoir besoin d'un équilibreur de charge.
Pour obtenir des exemples et des conseils sur les pages Web statiques, y compris sur l'hébergement d'éléments statiques pour un site Web dynamique, consultez la page Site Web statique.
Objectifs
Ce tutoriel vous explique comment :- créer un bucket ;
- importer et partager les fichiers de votre site ;
- configurer un équilibreur de charge et un certificat SSL ;
- connecter votre équilibreur de charge à votre bucket ;
- faire pointer votre domaine vers votre équilibreur de charge à l'aide d'un enregistrement
A
; - tester le site Web.
Coûts
Ce tutoriel utilise les composants facturables suivants de Google Cloud :
Pour en savoir plus sur les frais qui peuvent s'appliquer en cas d'hébergement d'un site Web statique, consultez la section Surveiller vos frais.
Avant de commencer
- Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.
- Activez l'API Compute Engine pour votre projet.
- Vous devez disposer des rôles Identity and Access Management suivants : Administrateur des objets Storage et Administrateur réseau Compute.
- Prenez un domaine que vous possédez ou gérez. Si vous ne disposez pas d'un domaine, de nombreux services vous permettent d'enregistrer un nouveau domaine, par exemple Google Domains et Cloud Domains.
Ce tutoriel utilise le domaine
example.com
. - Vous devez disposer de quelques fichiers de site Web à diffuser. Ce tutoriel donnera de meilleurs résultats si vous avez au moins une page d'index (
index.html
) et une page 404 (404.html
). - (Facultatif) Si vous souhaitez que votre bucket Cloud Storage ait le même nom que votre domaine, vous devez valider que vous possédez ou gérez le domaine que vous allez utiliser. Assurez-vous que cette validation porte sur le domaine de premier niveau, tel que
example.com
, et non sur un sous-domaine, tel quewww.example.com
. Si vous avez acheté le domaine via Google Domains, la validation est automatique.
Créer un bucket
Pour créer un bucket :
Console
- Dans Google Cloud Console, accédez à la page du Navigateur Cloud Storage.
- Cliquez sur Create bucket (Créer un bucket).
- Sur la page Créer un bucket, saisissez les informations concernant votre bucket. Pour passer à l'étape suivante, cliquez sur Continuer.
- Dans le champ Attribuer un nom au bucket, saisissez un nom qui répond aux exigences de dénomination des buckets.
- Dans le champ Choisir l'emplacement de stockage de vos données, sélectionnez un Type d'emplacement et un Emplacement où les données du bucket seront stockées de manière permanente.
- Pour Choisir une classe de stockage par défaut pour vos données, sélectionnez une classe de stockage pour le bucket. La classe de stockage par défaut est attribuée par défaut à tous les objets importés dans le bucket.
Remarque : Le panneau Monthly cost estimate (Estimation du coût mensuel) du volet de droite donne une estimation des coûts mensuels du bucket en fonction de la classe de stockage et de l'emplacement sélectionnés, ainsi que des opérations et du volume de données attendus.
- Pour le champ Choisir comment contrôler l'accès aux objets, indiquez si votre bucket s'applique ou non la protection contre l'accès public et sélectionnez un modèle de contrôle d'accès pour les objets de votre bucket.
Remarque : Si la protection contre l'accès public est déjà appliquée par la règle d'administration de votre projet, le bouton Empêcher l'accès public est verrouillé.
- Pour choisir comment protéger les données d'objet, configurez les outils de protection si vous le souhaitez, puis sélectionnez une méthode de chiffrement des données.
- Cliquez sur Create (Créer).
Pour savoir comment obtenir des informations d'erreur détaillées sur les opérations ayant échoué dans le navigateur Cloud Storage, consultez la page Dépannage.
Ligne de commande
Exécutez la commande gsutil mb
:
gsutil mb gs://BUCKET_NAME
Où :
BUCKET_NAME
correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Par exemple,my-bucket
.
Si la requête aboutit, la commande renvoie le message suivant :
Creating gs://BUCKET_NAME/...
Définissez les indicateurs facultatifs suivants pour mieux contrôler la création du bucket :
-p
: spécifiez l'ID ou le numéro du projet auquel le bucket sera associé. Exemple :my-project
-c
: spécifiez la classe de stockage par défaut du bucket. Par exemple,NEARLINE
.-l
: spécifiez l'emplacement du bucket. Exemple :US-EAST1
.-b
: spécifiez le paramètre d'accès uniforme au niveau du bucket pour votre bucket. Exemple :ON
.
Pour obtenir la liste complète des options de création de buckets gsutil, consultez la page Options Mo.
Exemple :
gsutil mb -p PROJECT_ID -c STORAGE_CLASS -l BUCKET_LOCATION -b on gs://BUCKET_NAME
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
PHP
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
Terraform
Vous pouvez utiliser une ressource Terraform pour créer un bucket de stockage.
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
- Créez un fichier .json contenant les paramètres du bucket, qui doit inclure un
name
pour le bucket. Consultez la documentation de la section Buckets:Insert pour obtenir la liste complète des paramètres. Les paramètres les plus courants sont les suivants : BUCKET_NAME
correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Par exemple,my-bucket
.BUCKET_LOCATION
correspond à l'emplacement où vous souhaitez stocker les données d'objets du bucket. Par exemple,US-EAST1
.STORAGE_CLASS
est la classe de stockage par défaut du bucket. Par exemple,NEARLINE
.- Utilisez
cURL
pour appeler l'API JSON :curl -X POST --data-binary @JSON_FILE_NAME.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b?project=PROJECT_IDENTIFIER"
Où :
JSON_FILE_NAME
correspond au nom du fichier JSON que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.PROJECT_IDENTIFIER
correspond à l'ID ou au numéro du projet auquel le bucket sera associé. Exemple :my-project
{ "name": "BUCKET_NAME", "location": "BUCKET_LOCATION", "storageClass": "STORAGE_CLASS", "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true }, } }
Où :
API XML
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
- Créez un fichier .xml contenant les informations suivantes :
BUCKET_LOCATION
correspond à l'emplacement où vous souhaitez stocker les données d'objets du bucket. Par exemple,US-EAST1
.STORAGE_CLASS
est la classe de stockage par défaut du bucket. Par exemple,NEARLINE
.- Utilisez
cURL
pour appeler l'API XML :curl -X PUT --data-binary @XML_FILE_NAME.xml \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "x-goog-project-id: PROJECT_ID" \ "https://storage.googleapis.com/BUCKET_NAME"
Où :
XML_FILE_NAME
correspond au nom du fichier XML que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.PROJECT_ID
correspond à l'ID du projet auquel le bucket sera associé. Par exemple,my-project
.BUCKET_NAME
correspond au nom que vous souhaitez attribuer au bucket, ce nom étant soumis à des exigences de dénomination. Exemple :my-bucket
.
<CreateBucketConfiguration> <LocationConstraint>BUCKET_LOCATION</LocationConstraint> <StorageClass>STORAGE_CLASS</StorageClass> </CreateBucketConfiguration>
Où :
Importer les fichiers de votre site
Ajoutez les fichiers que vous souhaitez que votre site Web diffuse dans le bucket :
Console
- Dans Google Cloud Console, accédez à la page du Navigateur Cloud Storage.
Dans la liste des buckets, cliquez sur le nom de celui que vous avez créé.
La page Informations sur le bucket s'ouvre avec l'onglet Objets sélectionné.
Cliquez sur le bouton Importer des fichiers.
Dans la boîte de dialogue de sélection de fichier, accédez au fichier souhaité et sélectionnez-le.
Une fois l'importation terminée, vous devez voir le nom de fichier et des informations relatives à ce dernier.
Pour savoir comment obtenir des informations d'erreur détaillées sur les opérations ayant échoué dans le navigateur Cloud Storage, consultez la page Dépannage.
gsutil
Exécutez la commande gsutil cp
pour copier des fichiers dans le bucket. Par exemple, pour copier le fichier index.html
à partir de son emplacement actuel Desktop
vers le bucket my-static-assets
:
gsutil cp Desktop/index.html gs://my-static-assets
Si l'opération réussit, la commande renvoie le résultat suivant :
Copying file://Desktop/index.html [Content-Type=text/html]... Uploading gs://my-static-assets/index.html: 0 B/2.58 KiB Uploading gs://my-static-assets/index.html: 2.58 KiB/2.58 KiB
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
PHP
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
L'exemple suivant lance l'importation d'un objet à partir d'un fichier :
L'exemple suivant lance l'importation d'un objet à partir de la mémoire :
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
Utilisez
cURL
pour appeler l'API JSON avec une requête d'objetPOST
: Pour le fichierindex.html
importé dans un bucket nommémy-static-assets
:curl -X POST --data-binary @index.html \ -H "Content-Type: text/html" \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ "https://storage.googleapis.com/upload/storage/v1/b/my-static-assets/o?uploadType=media&name=index.html"
API XML
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
Utilisez
cURL
pour appeler l'API XML avec une requête d'objetPUT
: Pour le fichierindex.html
importé dans un bucket nommémy-static-assets
:curl -X PUT --data-binary @index.html \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ -H "Content-Type: text/html" \ "https://storage.googleapis.com/my-static-assets/index.html"
Partager des fichiers
Pour rendre tous les objets d'un bucket lisibles par tous sur l'Internet public :
Console
- Dans Google Cloud Console, accédez à la page du Navigateur Cloud Storage.
Dans la liste des buckets, cliquez sur le nom de celui que vous souhaitez rendre public.
Sélectionnez l'onglet Autorisations en haut de la page.
Cliquez sur le bouton + Ajouter.
La boîte de dialogue Ajouter des entités principales s'affiche.
Dans le champ Nouvelles entités principales, saisissez
allUsers
.Dans la liste déroulante Sélectionner un rôle, sélectionnez le sous-menu Cloud Storage, puis cliquez sur l'option Lecteur des objets Storage.
Cliquez sur Enregistrer.
Cliquez sur Autoriser l'accès public.
Une fois le partage public effectué, une icône de lien s'affiche pour chaque objet dans la colonne Accès public. Vous pouvez cliquer sur cette icône pour obtenir l'URL de l'objet.
Pour savoir comment obtenir des informations d'erreur détaillées sur les opérations ayant échoué dans le navigateur Cloud Storage, consultez la page Dépannage.
gsutil
Exécutez la commande gsutil iam ch
:
gsutil iam ch allUsers:objectViewer gs://my-static-assets
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
Créez un fichier JSON contenant les informations suivantes :
{ "bindings":[ { "role": "roles/storage.objectViewer", "members":["allUsers"] } ] }
Exécutez
cURL
pour appeler l'API JSON avec une requête de bucketPUT
:curl -X PUT --data-binary @JSON_FILE_NAME \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/iam"
Où :
JSON_FILE_NAME
correspond au chemin d'accès au fichier JSON que vous avez créé à l'étape 2.OAUTH2_TOKEN
correspond au jeton d'accès que vous avez généré à l'étape 1.BUCKET_NAME
est le nom du bucket dont vous souhaitez rendre les objets publics. Exemple :my-static-assets
.
API XML
L'API XML ne permet pas de rendre tous les objets d'un bucket lisibles publiquement. Utilisez plutôt gsutil ou l'API JSON, ou définissez des LCA pour chaque objet individuel.
Pour rendre les objets individuels de votre bucket lisibles publiquement, vous devez passer le mode Contrôle des accès sur Ultraprécis. En règle générale, il est plus simple et plus rapide de rendre accessibles tous les fichiers du bucket.
Les visiteurs reçoivent un code de réponse http 403
lorsqu'ils demandent l'URL d'un fichier non public ou inexistant. Consultez la section suivante pour savoir comment ajouter une page d'erreur utilisant un code de réponse http 404
.
Attribuer des pages spécialisées (recommandé)
Vous pouvez attribuer un suffixe de page d'index contrôlé par la propriété MainPageSuffix
, ainsi qu'une page d'erreur personnalisée contrôlée par la propriété NotFoundPage
. Aucun de ces deux éléments n'est strictement obligatoire. Notez toutefois que si vous ne désignez pas de page d'index, aucun contenu n'est diffusé lorsque des utilisateurs accèdent à votre site de premier niveau, par exemple https://www.example.com
. Pour en savoir plus sur les propriétés MainPageSuffix
et NotFoundPage
, consultez Pages spécialisées.
Dans l'exemple suivant, MainPageSuffix
est défini sur index.html
, et NotFoundPage
sur 404.html
:
Console
- Dans Google Cloud Console, accédez à la page du Navigateur Cloud Storage.
Dans la liste des buckets, recherchez celui que vous avez créé.
Cliquez sur le menu déroulant (
) associé au bucket, puis sélectionnez Modifier la configuration du site Web.
Dans la boîte de dialogue de configuration du site Web, spécifiez la page principale et la page d'erreur.
Cliquez sur Enregistrer.
Pour savoir comment obtenir des informations d'erreur détaillées sur les opérations ayant échoué dans le navigateur Cloud Storage, consultez la page Dépannage.
gsutil
Exécutez la commande gsutil web set
pour définir la propriété MainPageSuffix
avec l'option -m
et la propriété NotFoundPage
avec l'option -e
:
gsutil web set -m index.html -e 404.html gs://my-static-assets
Si l'opération réussit, la commande renvoie le résultat suivant :
Setting website config on gs://my-static-assets/...
Exemples de code
C++
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C++.
C#
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage C#.
Go
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Go.
Java
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Java.
Node.js
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Node.js.
PHP
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage PHP.
Python
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Python.
Ruby
Pour en savoir plus, consultez la documentation de référence de l'API Cloud Storage en langage Ruby.
API REST
API JSON
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
Créez un fichier JSON qui définit les propriétés
mainPageSuffix
etnotFoundPage
d'un objetwebsite
sur les pages souhaitées :{ "website":{ "mainPageSuffix": "index.html", "notFoundPage": "404.html" } }
Exécutez
cURL
pour appeler l'API JSON avec une requête de bucketPATCH
. Pour le bucketmy-static-assets
:curl -X PATCH --data-binary @web-config.json \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/my-static-assets"
API XML
- Obtenez un jeton d'autorisation d'accès sur la page OAuth 2.0 Playground. Configurez Playground pour utiliser vos propres identifiants OAuth. Pour obtenir des instructions, consultez la page Authentification des API.
Créez un fichier XML qui définit les éléments
MainPageSuffix
etNotFoundPage
d'un élémentWebsiteConfiguration
sur les pages souhaitées :<WebsiteConfiguration> <MainPageSuffix>index.html</MainPageSuffix> <NotFoundPage>404.html</NotFoundPage> </WebsiteConfiguration>
Utilisez
cURL
pour appeler l'API XML avec une requête de bucketPUT
et un paramètre de chaîne de requêtewebsiteConfig
. Pour my-static-assets :curl -X PUT --data-binary @web-config.xml \ -H "Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg" \ https://storage.googleapis.com/my-static-assets?websiteConfig
Configurer votre équilibreur de charge et votre certificat SSL
Cloud Storage n'est pas compatible avec les domaines personnalisés n'acceptant que le protocole HTTPS. Vous devez donc également configurer un certificat SSL associé à un équilibreur de charge HTTPS pour diffuser votre site Web via HTTPS. Cette section explique comment ajouter votre bucket au backend d'un équilibreur de charge et ajouter un nouveau certificat SSL géré par Google à l'interface de l'équilibreur de charge.
- Accédez à la page "Équilibrage de charge" dans Google Cloud Console.
Accéder à la page Équilibrage de charge - Dans la section Équilibrage de charge HTTP(S), cliquez sur Démarrer la configuration.
- Sélectionnez From Internet to my VMs or serverless services (D'Internet vers mes VM ou mes services sans serveur).
- Sélectionnez Équilibreur de charge HTTP(S) global.
Cliquez sur Continuer.
La fenêtre de configuration de votre équilibreur de charge s'affiche.
Avant de poursuivre la configuration, attribuez un nom à votre équilibreur de charge, tel que
example-lb
.
Configurer le backend
- Cliquez sur Configuration du backend.
- Dans la liste déroulante Services de backend et buckets backend, cliquez sur Créer un bucket backend.
- Choisissez un nom de bucket backend, tel que
example-bucket
. Le nom que vous choisissez peut être différent du nom du bucket que vous avez créé précédemment. - Cliquez sur Browse (Parcourir) dans le champ Cloud Storage bucket (Bucket Cloud Storage).
- Sélectionnez le bucket
my-static-assets
que vous avez créé précédemment, puis cliquez sur Sélectionner. - (Facultatif) Si vous souhaitez utiliser Cloud CDN, cochez la case Activer Cloud CDN et configurez Cloud CDN comme vous le souhaitez. Notez que Cloud CDN peut entraîner des coûts supplémentaires.
- Cliquez sur Create (Créer).
Configurer des règles de routage
Les règles de routage sont les composants du mappage d'URL d'un équilibreur de charge HTTP(S) externe. Dans ce tutoriel, vous devez ignorer cette partie de la configuration de l'équilibreur de charge, car elle est automatiquement définie pour utiliser le backend que vous venez de configurer.
Configurer l'interface
Cette section vous explique comment configurer le protocole HTTPS et créer un certificat SSL. Vous pouvez également sélectionner un certificat existant ou importer un certificat SSL autogéré.
- Cliquez sur Configuration du frontend.
- (Facultatif) Attribuez un nom à la configuration de votre interface.
- Sous Protocol (Protocole), sélectionnez HTTPS (includes HTTP/2) (HTTPS (y compris HTTP/2).
- Pour Niveau de service réseau, sélectionnez Premium.
- Pour Version IP, sélectionnez IPv4. Si vous préférez le protocole IPv6, consultez la documentation sur la terminaison IPv6 pour en savoir plus.
Pour le champ Adresse IP :
- Dans la liste déroulante, cliquez sur Créer une adresse IP.
- Dans la fenêtre pop-up Réserver une nouvelle adresse IP statique, saisissez un nom, tel que
example-ip
pour le nom de l'adresse IP. - Cliquez sur Réserver.
Pour Port, sélectionnez 443.
Dans le menu déroulant Certificat, sélectionnez Créer un certificat. Le formulaire de création de certificat s'affiche dans un panneau. Ensuite, procédez à la configuration des éléments suivants, comme indiqué :
- Attribuez un nom à votre certificat, tel que
example-ssl
. - Dans le champ Créer un mode, sélectionnez Créer un certificat géré par Google.
- Pour les Domains (Domaines), saisissez le nom de votre site Web, tel que
www.example.com
. Si vous souhaitez diffuser votre contenu via d'autres domaines, tels que le domaine racineexample.com
, appuyez sur Entrée pour les ajouter sur des lignes supplémentaires. Chaque certificat a une limite de 100 domaines.
- Attribuez un nom à votre certificat, tel que
Cliquez sur Create (Créer).
(Facultatif) Si vous souhaitez que Google Cloud configure automatiquement un équilibreur de charge HTTP partiel pour rediriger le trafic HTTP, cochez la case Activer la redirection HTTP vers HTTPS.
Cliquez sur OK.
Vérifier la configuration
- Cliquez sur Vérifier et finaliser.
- Examinez l'interface, les règles de routage et le backend.
- Cliquez sur Create (Créer).
Vous devrez peut-être attendre quelques minutes que l'équilibreur de charge soit créé.
Connecter un domaine à votre équilibreur de charge
Une fois l'équilibreur de charge créé, cliquez sur son nom : example-lb
. Notez l'adresse IP associée à l'équilibreur de charge, par exemple 30.90.80.100
. Pour faire pointer votre domaine vers votre équilibreur de charge, créez un enregistrement A
à l'aide de votre service d'enregistrement de domaine. Si vous avez ajouté plusieurs domaines à votre certificat SSL, vous devez ajouter un enregistrement A
pour chacun d'entre eux, pointant tous vers l'adresse IP de l'équilibreur de charge. Par exemple, pour créer des enregistrements A
pour www.example.com
et example.com
:
NAME TYPE DATA www A 30.90.80.100 @ A 30.90.80.100
Si vous utilisez Google Domains, consultez la page d'aide Google Domains pour obtenir plus d'informations.
Surveiller l'état du certificat SSL (recommandé)
Le provisionnement du certificat et la mise à disposition du site via l'équilibreur de charge peuvent prendre entre 60 et 90 minutes. Pour surveiller l'état de votre certificat, procédez comme suit :
Console
- Accédez à la page "Équilibrage de charge" dans Google Cloud Console.
Accéder à la page Équilibrage de charge - Cliquez sur le nom de votre équilibreur de charge :
example-lb
. - Cliquez sur le nom du certificat SSL associé à l'équilibreur de charge :
example-ssl
. - Les lignes État et État du domaine indiquent l'état du certificat. Les deux éléments doivent être actifs pour que le certificat soit valide pour votre site Web.
gcloud
Pour vérifier l'état du certificat, exécutez la commande suivante :
gcloud beta compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(name,managed.status)"
Pour vérifier l'état du domaine, exécutez la commande suivante :
gcloud beta compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(managed.domainStatus)"
Pour en savoir plus sur l'état des certificats, consultez la section Résoudre les problèmes liés aux certificats SSL.
Tester le site Web
Une fois le certificat SSL actif, vérifiez que le contenu est diffusé à partir du bucket en accédant à https://www.example.com/test.html
, où test.html
est un objet stocké dans le bucket que vous utilisez en tant que backend. Si vous définissez la propriété MainPageSuffix
, https://www.example.com
passe à index.html
.
Effectuer un nettoyage
Une fois le tutoriel terminé, vous pouvez procéder au nettoyage des ressources que vous avez créées afin qu'elles ne soient plus comptabilisées dans votre quota et qu'elles ne vous soient plus facturées. Dans les sections suivantes, nous allons voir comment supprimer ou désactiver ces ressources.
Supprimer le projet
Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.
Pour supprimer le projet :
- Dans la console, accédez à la page Gérer les ressources.
- Dans la liste des projets, sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Supprimer.
- Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.
Supprimer l'équilibreur de charge et le bucket
Si vous ne souhaitez pas supprimer l'intégralité du projet, supprimez l'équilibreur de charge et le bucket que vous avez créés pour le tutoriel :
- Accédez à la page "Équilibrage de charge" dans Google Cloud Console.
Accéder à la page Équilibrage de charge - Cochez la case située à côté de
example-lb
. - Cliquez sur Supprimer.
- (Facultatif) Cochez la case à côté des ressources que vous souhaitez supprimer avec l'équilibreur de charge, telles que le bucket
my-static-assets
ou le certificat SSLexample-ssl
. - Cliquez sur Supprimer l'équilibreur de charge ou Supprimer l'équilibreur de charge et les ressources sélectionnées.
Libérer une adresse IP réservée
Pour supprimer l'adresse IP réservée que vous avez utilisée pour le tutoriel :
Dans la console, accédez à la page Adresses IP externes.
Cochez les cases situées à côté de
example-ip
.Cliquez sur Libérer l'adresse statique.
Dans la fenêtre de confirmation, cliquez sur Supprimer.
Étape suivante
- Découvrez comment diffuser votre site Web statique via HTTP.
- Consultez des exemples et des conseils relatifs à l'utilisation de buckets pour héberger un site Web statique.
- Consultez la section de la page "Dépannage" portant sur l'hébergement d'un site Web statique.
- Apprenez-en plus sur l'hébergement d'éléments statiques pour un site Web dynamique.
- Découvrez d'autres solutions de diffusion Web Google Cloud.
- Suivez d'autres tutoriels Google Cloud qui utilisent Cloud Storage.
Faites l'essai
Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de Cloud Storage en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits offerts pour exécuter, tester et déployer des charges de travail.
Profiter d'un essai gratuit de Cloud Storage