Site Web statique : exemples et conseils

Cette page présente des exemples et des conseils pour héberger un site Web statique avec des buckets.

Exemples de configuration de site Web

Les scénarios suivants décrivent les objets diffusés lorsque vous tentez d'y accéder avec différentes URL.

Bucket à trois objets

Supposons qu'un bucket nommé www.example.com a été configuré en tant que site Web avec les paramètres et les fichiers suivants :

  • MainPageSuffix = "index.html"
  • NotFoundPage = "404.html"
  • Le bucket contient trois objets partagés publiquement : "index.html", "404.html" et "dir/index.html".

Le tableau suivant présente le contenu diffusé pour les URL sélectionnées :

URL demandée Contenu diffusé Code de réponse HTTP
http://www.example.com
http://www.example.com/
http://www.example.com/index.html
Objet "index.html" 200
http://www.example.com/hello Objet "404.html" 404
http://www.example.com/dir/index.html Objet "dir/index.html" 200
http://www.example.com/dir Objet "dir/index.html" 301
http://www.example.com/dir/ Objet "dir/index.html", en supposant qu'aucun objet de zéro octet ne figure dans /dir/. 200
Objet vide de zéro octet dans /dir/, le cas échéant. Consultez la procédure de dépannage pour supprimer cet objet de zéro octet. 301

Bucket à deux objets

Supposons qu'un bucket nommé www.example.com a été configuré en tant que site Web avec les paramètres et les fichiers suivants :

  • MainPageSuffix = "main.html"
  • NotFoundPage = "404.html"
  • Le bucket contient deux objets partagés publiquement : "main.html" et "404.html".

Le tableau suivant présente le contenu diffusé pour les URL sélectionnées :

URL demandée Contenu diffusé Code de réponse HTTP
http://www.example.com
http://www.example.com/
Objet "main.html" 200
http://www.example.com/index.html Objet "404.html" 404

Si un objet est partagé publiquement, vous pouvez également l'afficher à l'aide de l'URL :

http://storage.googleapis.com/[BUCKET_NAME]/[OBJECT_NAME]

Par exemple, l'URL d'un objet index.html pourrait se présenter comme suit :

http://storage.googleapis.com/www.example.com/index.html

Pour en savoir plus sur l'utilisation des données accessibles au public, consultez Accéder aux données publiques.

Conseils d'utilisation d'un bucket configuré en tant que site Web

Voici quelques conseils à garder à l'esprit lorsque vous hébergez un site Web statique à l'aide d'un bucket.

Ajouter des sous-domaines

Supposons que vous souhaitiez également diffuser du contenu sur test.example.com, à partir d'un bucket différent de celui utilisé pour diffuser du contenu sur www.example.com. Pour ce faire :

  1. Créez un bucket test.example.com. Étant donné que vous avez déjà validé le domaine example.com, vous pouvez créer des buckets pour accepter les sous-domaines sans validation supplémentaire.

  2. Ajoutez un nouvel enregistrement CNAME au sous-domaine.

    NAME                  TYPE     DATA
    test                  CNAME    c.storage.googleapis.com.
    

Définir des paramètres de cache

Vous pouvez configurer les métadonnées Cache-Control pour contrôler la mise en cache des éléments de votre site Web. En règle générale, vous devez uniquement définir les métadonnées de contrôle du cache pour les objets accessibles à tous les utilisateurs anonymes. C'est une nécessité pour tout objet diffusé à partir d'un bucket Cloud Storage dans un site Web statique.

Cloud Storage applique un paramètre de contrôle du cache de 3 600 secondes aux objets accessibles à tous les utilisateurs anonymes, sauf si vous spécifiez des paramètres de contrôle explicites. Pour savoir comment configurer des métadonnées d'objets comme Cache-Control, consultez la page Afficher et modifier des métadonnées.

Comportement de l'API

Les configurations de site Web MainPageSuffix et NotFoundPage ne sont utilisées que pour les requêtes qui parviennent à Cloud Storage via le point de terminaison CNAME ou via Cloud Load Balancing. Par exemple, une requête envoyée à www.example.com affiche la page d'index, mais pas une requête équivalente envoyée à storage.googleapis.com/www.example.com.

Ainsi, le comportement de l'API est conservé pour les requêtes adressées aux domaines Cloud Storage, tels que storage.googleapis.com/www.example.com. Par exemple, vous pouvez continuer à répertorier les objets du bucket www.example.com, comme vous le feriez pour n'importe quel autre. Dans le cas du bucket www.example.com, la liste d'objets que vous recevez inclut 404.html et index.html.

Héberger les éléments statiques d'un site Web dynamique

Cloud Storage vous permet d'héberger les éléments statiques d'un site Web dynamique hébergé, par exemple, dans Google App Engine ou Google Compute Engine. L'hébergement de vos éléments statiques, tels que les images ou les fichiers JavaScript, dans un bucket présente les avantages suivants :

  • Cloud Storage agit principalement comme un réseau de diffusion de contenu (CDN) sans intervention de votre part, car les objets lisibles publiquement sont mis en cache dans le réseau Cloud Storage par défaut.

  • Les frais d'utilisation de la bande passante pour accéder aux contenus sont généralement moins élevés avec Cloud Storage.

  • La charge de vos serveurs Web est réduite lorsque vous diffusez du contenu statique à partir de Cloud Storage.

Vous pouvez également contrôler la mise en cache, par exemple, la désactiver ou définir la durée de vie du cache, de vos éléments statiques lisibles publiquement à l'aide d'en-têtes de requêtes de contrôle de cache. Pour en savoir plus, consultez Définir des paramètres de cache.

Lorsque vous hébergez les éléments statiques d'un site Web dynamique, vous n'avez pas besoin de créer un enregistrement CNAME, ni de pointer vers un bucket portant le même nom, comme vous le feriez pour un site Web statique. Par exemple, vous pouvez disposer d'un bucket nommé www_example_com_assets avec les éléments appropriés configurés pour être partagés publiquement, puis accéder à ces éléments à l'aide du domaine Cloud Storage. Par exemple, supposons que le fichier JavaScript library.js du bucket www_example_com_assets est partagé publiquement. Vous pouvez y accéder via l'adresse http://storage.googleapis.com/www_example_com_assets/library.js.

Surveiller vos frais de stockage

Si vous diffusez des éléments à partir d'un bucket configuré en tant que site Web statique ou d'un bucket pour un site Web dynamique hébergé en dehors de Cloud Storage, vous devez surveiller les frais de votre projet dans lequel se trouve le bucket. La diffusion de contenu implique des coûts dans Cloud Storage pour stocker le contenu, utiliser le réseau et effectuer des opérations de récupération. Pour en savoir plus, consultez la page Tarifs de Cloud Storage.

L'exemple de tarification simple de la page "Tarifs" correspond à une estimation dans le cas d'un site Web statique à faible trafic. Vous pouvez utiliser le simulateur de coût pour générer une estimation du coût en fonction de votre utilisation prévue.

Les nouveaux utilisateurs de Cloud Platform peuvent bénéficier d'un essai gratuit.

Si vous êtes déjà un utilisateur de Cloud Platform, vous pouvez obtenir une répartition détaillée des coûts de votre projet sur la page de facturation.

Dépannage

Consultez la page Dépannage pour passer en revue les problèmes courants liés à l'utilisation d'un bucket configuré pour diffuser le contenu d'un site Web statique.

Étapes suivantes

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

Besoin d'aide ? Consultez notre page d'assistance.