In dieser Anleitung wird beschrieben, wie Sie einen Cloud Storage-Bucket konfigurieren, um eine statische Website für eine Domain, die Ihnen gehört, zu hosten. Statische Webseiten können clientseitige Technologien wie HTML, CSS und JavaScript enthalten, jedoch keine dynamischen Inhalte wie serverseitige Skripts (z. B. PHP).
Da Cloud Storage allein keine benutzerdefinierten Domains mit HTTPS unterstützt, wird in dieser Anleitung Cloud Storage mit HTTP(S)-Load-Balancing verwendet, um Inhalte aus einer benutzerdefinierten Domain über HTTPS bereitzustellen. Weitere Möglichkeiten zum Bereitstellen von Inhalten aus einer benutzerdefinierten Domain über HTTPS finden Sie im entsprechenden Thema zur Fehlerbehebung. Sie können Cloud Storage auch verwenden, um benutzerdefinierte Domaininhalte über HTTP bereitzustellen. Hierfür ist kein Load-Balancer erforderlich.
Beispiele und Tipps zu statischen Webseiten, etwa zum Hosten statischer Inhalte für eine dynamische Website, finden Sie auf der Seite „Statische Website“.
Ziele
In dieser Anleitung wird Folgendes erläutert:- Bucket erstellen
- Dateien in Ihre Website hochladen und freigeben.
- Load-Balancer und SSL-Zertifikat einrichten.
- Load-Balancer mit dem Bucket verbinden.
- Mit einem
A
-Eintrag einen Verweis der Domain zum Load-Balancer erstellen. - Die Website testen.
Kosten
In dieser Anleitung werden die folgenden kostenpflichtigen Komponenten von Google Cloud verwendet:
- Cloud Storage
- Cloud Load Balancing
Weitere Informationen zu den Kosten, die beim Hosten einer statischen Website anfallen können, finden Sie unter Gebühren überwachen. Auf der Seite Preise finden Sie weitere Informationen zu Cloud Storage-Kosten.
Vorbereitung
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für Ihr Projekt aktiviert ist.
- Haben oder verwalten Sie eine Domain? Wenn Sie noch keine Domain haben, können Sie eine neue registrieren. Dazu stehen Ihnen viele Dienste wie Google Domains zur Verfügung.
In dieser Anleitung wird die Domain
example.com
verwendet. - Halten Sie einige Websitedateien bereit, die Sie bereitstellen möchten. Für diese Anleitung ist es am besten, wenn Sie mindestens eine Indexseite (
index.html
) und eine 404-Seite (404.html
) haben. - Sie benötigen die folgenden Rollen für die Identitäts- und Zugriffsverwaltung: Storage-Objekt-Administrator und Netzwerkadministrator.
- (Optional) Sie können Ihrem Cloud Storage-Bucket denselben Namen wie Ihre Domain geben, sodass Sie die Websitekonfiguration für Ihren Bucket über die Cloud Console steuern können. Dazu müssen Sie bestätigen, dass Sie der Inhaber oder Verwalter der Domain sind, die Sie verwenden möchten. Verifizieren Sie unbedingt die Top-Level-Domain wie
example.com
und keine Subdomain wiewww.example.com
.Hinweis: Wenn Sie die Domain besitzen, die Sie einem Bucket zuordnen, haben Sie diesen Schritt möglicherweise bereits in der Vergangenheit durchgeführt. Wenn Sie Ihre Domain über Google Domains erworben haben, erfolgt die Überprüfung automatisch.
Bucket erstellen
So erstellen Sie einen Bucket:
Console
- Öffnen Sie den Cloud Storage-Browser in der Google Cloud Console.
Zum Cloud Storage-Browser - Klicken Sie auf Bucket erstellen, um das Formular zum Erstellen eines Buckets zu öffnen.
- Geben Sie die Bucket-Informationen ein und klicken Sie zum Ausführen der einzelnen Schritte jeweils auf Weiter:
- Legen Sie einen Namen fest, der die Anforderungen für Bucket-Namen erfüllt.
- Wählen Sie einen Standorttyp und einen Standort aus, unter dem die Bucket-Daten dauerhaft gespeichert werden.
- Wählen Sie eine Standardspeicherklasse für den Bucket aus. Die Standardspeicherklasse wird standardmäßig allen in den Bucket hochgeladenen Objekten zugewiesen.
Hinweis: Im Feld Schätzung monatliche Kosten im rechten Bereich finden Sie eine Schätzung der monatlichen Kosten für den Bucket auf der Grundlage der ausgewählten Speicherklasse und des ausgewählten Standorts sowie der erwarteten Datengröße und der erwarteten Vorgänge.
- Wählen Sie ein Zugriffssteuerungsmodell aus, das den Zugriff auf die Objekte des Buckets steuert.
- Optional können Sie Bucket-Labels einfügen, eine Aufbewahrungsrichtlinie festlegen und eine Verschlüsselungsmethode auswählen.
- Klicken Sie auf Erstellen.
Unter Fehlerbehebung erfahren Sie, wie Sie im Cloud Storage-Browser detaillierte Fehlerinformationen zu fehlgeschlagenen Vorgängen abrufen.
gsutil
Führen Sie folgenden Befehl gsutil mb
aus:
gsutil mb gs://BUCKET_NAME
Dabei gilt:
BUCKET_NAME
ist der Name, den Sie dem Bucket gemäß den Benennungsanforderungen geben möchten. Beispiel:my-bucket
.
Wenn die Anfrage erfolgreich ist, gibt der Befehl die folgende Meldung zurück:
Creating gs://BUCKET_NAME/...
Mit den folgenden optionalen Flags können Sie das Erstellen des Buckets noch genauer steuern:
-p
: Geben Sie das Projekt an, mit dem der Bucket verknüpft wird. Beispiel:my-project
.-c
: Geben Sie die Standardspeicherklasse des Buckets an. Beispiel:NEARLINE
-l
: Geben Sie den Standort des Buckets an. Beispiel:US-EAST1
-b
: Aktivieren Sie den einheitlichen Zugriff auf Bucket-Ebene für Ihren Bucket.
Beispiel:
gsutil mb -p PROJECT_ID -c STORAGE_CLASS -l BUCKET_LOCATION -b on gs://BUCKET_NAME
Codebeispiele
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
REST APIs
JSON API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
- Erstellen Sie eine JSON-Datei mit den Einstellungen für den Bucket, der ein
name
für den Bucket enthalten muss. Eine vollständige Liste der Einstellungen finden Sie in der Dokumentation zu Buckets:Insert. Folgende Einstellungen können verwendet werden: BUCKET_NAME
ist der Name, den Sie dem Bucket gemäß den Benennungsanforderungen geben möchten. Beispiel:my-bucket
.BUCKET_LOCATION
ist der Standort, an dem Sie die Objektdaten Ihres Buckets speichern möchten. Beispiel:US-EAST1
STORAGE_CLASS
ist die Standardspeicherklasse Ihres Buckets. Beispiel:NEARLINE
- Verwenden Sie
cURL
zum Aufrufen der JSON API: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_ID"
Dabei gilt:
JSON_FILE_NAME
ist der Name der JSON-Datei, die Sie in Schritt 2 erstellt haben.OAUTH2_TOKEN
ist das Zugriffstoken, das Sie in Schritt 1 generiert haben.PROJECT_ID
ist die ID des Projekts, mit dem Ihr Bucket verknüpft wird. Beispiel:my-project
.
{ "name": "BUCKET_NAME", "location": "BUCKET_LOCATION", "storageClass": "STORAGE_CLASS", "iamConfiguration": { "uniformBucketLevelAccess": { "enabled": true }, } }
Dabei gilt:
XML API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
- Erstellen Sie eine XML-Datei, die die folgenden Informationen enthält:
BUCKET_LOCATION
ist der Standort, an dem Sie die Objektdaten Ihres Buckets speichern möchten. Beispiel:US-EAST1
STORAGE_CLASS
ist die Standardspeicherklasse Ihres Buckets. Beispiel:NEARLINE
- Verwenden Sie
cURL
zum Aufrufen der XML API: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"
Dabei gilt:
XML_FILE_NAME
ist der Name der XML-Datei, die Sie in Schritt 2 erstellt haben.OAUTH2_TOKEN
ist das Zugriffstoken, das Sie in Schritt 1 generiert haben.PROJECT_ID
ist die ID des Projekts, mit dem Ihr Bucket verknüpft wird. Beispiel:my-project
.BUCKET_NAME
ist der Name, den Sie Ihrem Bucket gemäß den Benennungsanforderungen zuweisen möchten. Beispiel:my-bucket
.
<CreateBucketConfiguration> <LocationConstraint>BUCKET_LOCATION</LocationConstraint> <StorageClass>STORAGE_CLASS</StorageClass> </CreateBucketConfiguration>
Dabei gilt:
Dateien meiner Website hochladen
Fügen Sie dem Bucket die Dateien hinzu, die Ihre Website bereitstellen soll:
Console
- Öffnen Sie den Cloud Storage-Browser in der Google Cloud Console.
Zum Cloud Storage-Browser Klicken Sie in der Liste der Buckets auf den Namen des Buckets, den Sie erstellt haben.
Die Seite Bucket-Details wird geöffnet und der Tab Objekte ist ausgewählt.
Klicken Sie auf die Schaltfläche Dateien hochladen.
Gehen Sie im Dateidialogfeld zur gewünschten Datei und wählen Sie sie aus.
Wenn der Upload abgeschlossen ist, sollten Sie im Bucket den Dateinamen und Informationen zur Datei sehen.
Unter Fehlerbehebung erfahren Sie, wie Sie im Cloud Storage-Browser detaillierte Fehlerinformationen zu fehlgeschlagenen Vorgängen abrufen.
gsutil
Verwenden Sie den Befehl gsutil cp
, um Dateien in den Bucket zu kopieren. So kopieren Sie beispielsweise die Datei index.html
von ihrem aktuellen Speicherort Desktop
in den Bucket my-static-assets
:
gsutil cp Desktop/index.html gs://my-static-assets
Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:
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
Codebeispiele
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Weitere Informationen zum Hochladen eines Streams, eines Strings oder eines Zwischenspeichers finden Sie unter File.save().PHP
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage PHP API.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Verwenden Sie die Methode Blob.upload_from_file(), Blob.upload_from_filename() oder Blob.upload_from_string(), um ein Objekt hochzuladen.Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
REST APIs
JSON API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
Verwenden Sie
cURL
, um die JSON API mit einerPOST
-Objektanfrage aufzurufen: Für die Dateiindex.html
, die in einen Bucket mit dem Namenmy-static-assets
hochgeladen wurde: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"
XML API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
Verwenden Sie
cURL
, um die XML API mit einerPUT
-Objektanfrage aufzurufen: Für die Dateiindex.html
, die in einen Bucket mit dem Namenmy-static-assets
hochgeladen wurde: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"
Dateien freigeben
So machen Sie alle Objekte in einem Bucket für alle Nutzer im öffentlichen Internet lesbar:
Console
- Öffnen Sie den Cloud Storage-Browser in der Google Cloud Console.
Zum Cloud Storage-Browser Klicken Sie in der Liste der Buckets auf den Namen des Buckets, den Sie veröffentlichen möchten.
Wählen Sie oben auf der Seite den Tab Berechtigungen aus.
Klicken Sie auf die Schaltfläche Mitglieder hinzufügen.
Das Dialogfeld Mitglieder hinzufügen wird angezeigt.
Geben Sie im Feld Neue Mitglieder den Wert
allUsers
ein.Wählen Sie im Drop-down-Menü Rolle auswählen das Untermenü Cloud Storage aus und klicken Sie auf die Option Storage-Objektbetrachter.
Klicken Sie auf Speichern.
Klicken Sie auf Öffentlichen Zugriff erlauben.
Sobald das Objekt öffentlich freigegeben ist, wird in der Spalte für den öffentlichen Zugriff ein Link-Symbol angezeigt. Wenn Sie auf dieses Symbol klicken, erhalten Sie die URL für das Objekt.
Unter Fehlerbehebung erfahren Sie, wie Sie im Cloud Storage-Browser detaillierte Fehlerinformationen zu fehlgeschlagenen Vorgängen abrufen.
gsutil
Führen Sie den Befehl gsutil iam ch
aus:
gsutil iam ch allUsers:objectViewer gs://my-static-assets
Codebeispiele
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
C#
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C# API.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
REST APIs
JSON API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
Erstellen Sie eine JSON-Datei, die die folgenden Informationen enthält:
{ "bindings":[ { "role": "roles/storage.objectViewer", "members":["allUsers"] } ] }
Verwenden Sie
cURL
, um die JSON API mit einerPUT
-Bucket-Anfrage aufzurufen:curl -X PUT --data-binary @JSON_FILE_NAME.json \ -H "Authorization: Bearer OAUTH2_TOKEN" \ -H "Content-Type: application/json" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME/iam"
Dabei gilt:
JSON_FILE_NAME
ist der Name der Datei, die Sie in Schritt 2 erstellt haben.OAUTH2_TOKEN
ist das Zugriffstoken, das Sie in Schritt 1 erstellt haben.BUCKET_NAME
ist der Name des Buckets, dessen Objekte Sie veröffentlichen möchten. Beispiel:my-static-assets
XML API
Die öffentliche Freigabe aller Objekte in einem Bucket wird von der XML API nicht unterstützt. Verwenden Sie stattdessen gsutil oder die JSON API oder legen Sie ACLs für jedes einzelne Objekt fest.
Wenn Sie einzelne Objekte im Bucket öffentlich zugänglich machen möchten, müssen Sie den Modus der Zugriffssteuerung des Buckets auf Detailgenau umstellen. Generell geht es einfacher und schneller, alle Dateien im Bucket öffentlich zugänglich zu machen.
Besucher erhalten einen http 403
-Antwortcode, wenn sie die URL für eine nicht öffentliche oder nicht vorhandene Datei anfordern. Informationen zum Einfügen einer Fehlerseite mit einem http 404
-Antwortcode finden Sie im nächsten Abschnitt.
Empfohlen: Spezialseiten zuweisen
Sie können ein Indexseitensuffix zuweisen, das vom Attribut MainPageSuffix
und einer benutzerdefinierten Fehlerseite gesteuert wird, die wiederum vom Attribut NotFoundPage
gesteuert wird. Beide Zuweisungen sind optional. Ohne eine Indexseite wird jedoch nichts angezeigt, wenn Nutzer auf Ihre Top-Level-Website (z. B. https://www.example.com
) zugreifen. Weitere Informationen zu den Attributen MainPageSuffix
und NotFoundPage
finden Sie unter Spezialseiten.
Im folgenden Beispiel ist MainPageSuffix
auf index.html
und NotFoundPage
auf 404.html
festgelegt:
Console
- Öffnen Sie den Cloud Storage-Browser in der Google Cloud Console.
Zum Cloud Storage-Browser Suchen Sie in der Liste der Buckets den Bucket, den Sie erstellt haben.
Klicken Sie auf das Dreipunkt-Menü (
) des Buckets und wählen Sie Websitekonfiguration bearbeiten aus.
Geben Sie im Dialogfeld zur Websitekonfiguration die Hauptseite und die Fehlerseite an.
Klicken Sie auf Speichern.
Unter Fehlerbehebung erfahren Sie, wie Sie im Cloud Storage-Browser detaillierte Fehlerinformationen zu fehlgeschlagenen Vorgängen abrufen.
gsutil
Verwenden Sie den Befehl gsutil web set
, um das Attribut MainPageSuffix
mit dem Flag -m
und NotFoundPage
mit dem Flag -e
festzulegen:
gsutil web set -m index.html -e 404.html gs://my-static-assets
Wenn der Vorgang erfolgreich ist, gibt der Befehl Folgendes zurück:
Setting website config on gs://my-static-assets/...
Codebeispiele
C++
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage C++ API.
Go
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Go API.
Java
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Java API.
Node.js
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Node.js API.
Python
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Python API.
Ruby
Weitere Informationen finden Sie in der Referenzdokumentation zur Cloud Storage Ruby API.
REST APIs
JSON API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
Erstellen Sie eine
.json
-Datei, die die AttributemainPageSuffix
undnotFoundPage
in einemwebsite
-Objekt auf die gewünschten Seiten festlegt:{ "website":{ "mainPageSuffix": "index.html", "notFoundPage": "404.html" } }
Verwenden Sie
cURL
, um die JSON API mit einerPATCH
-Bucket-Anfrage aufzurufen. Für den 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"
XML API
- Rufen Sie ein Zugriffstoken für die Autorisierung aus dem OAuth 2.0 Playground ab. Konfigurieren Sie den Playground so, dass Ihre eigenen OAuth-Anmeldedaten verwendet werden.
Erstellen Sie eine
.xml
-Datei, die die ElementeMainPageSuffix
undNotFoundPage
in einemWebsiteConfiguration
-Element auf die gewünschten Seiten festlegt:<WebsiteConfiguration> <MainPageSuffix>index.html</MainPageSuffix> <NotFoundPage>404.html</NotFoundPage> </WebsiteConfiguration>
Verwenden Sie
cURL
, um die XML API mit einerPUT
-Bucket-Anfrage und dem AbfragestringparameterwebsiteConfig
aufzurufen. Für „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
Load-Balancer und SSL-Zertifikat einrichten
Da Cloud Storage allein keine benutzerdefinierten Domains mit HTTPS unterstützt, müssen Sie auch ein SSL-Zertifikat einrichten, das an einen HTTPS-Load-Balancer angehängt ist, um Ihre Website über HTTPS bereitzustellen. In diesem Abschnitt wird beschrieben, wie Sie Ihren Bucket zum Back-End eines Load-Balancers hinzufügen und wie Sie ein neues von Google verwaltetes SSL-Zertifikat zum Front-End des Load-Balancers hinzufügen.
- Öffnen Sie in der Google Cloud Console die Seite „Load-Balancing“.
Zur Seite „Load-Balancing“ - Klicken Sie unter HTTP(S)-Load-Balancing auf Konfiguration starten.
- Wählen Sie Vom Internet zu meinen VMs aus und klicken Sie auf Weiter.
- Geben Sie dem Load-Balancer einen Namen, z. B.
example-lb
.
Back-End konfigurieren
- Klicken Sie auf Back-End-Konfiguration.
- Öffnen Sie im Drop-down-Menü Back-End-Dienste und Back-End-Buckets erstellen oder auswählen das Untermenü Back-End-Buckets und klicken Sie auf die Option Back-End-Bucket erstellen.
- Wählen Sie einen Namen für den Back-End-Bucket aus, z. B.
example-bucket
. - Klicken Sie unter Cloud Storage-Bucket auf Durchsuchen.
- Wählen Sie den Bucket
my-static-assets
aus und klicken Sie auf Auswählen. - Wenn Sie Cloud CDN verwenden möchten, klicken Sie das Kästchen für Cloud CDN aktivieren an. Belassen Sie die Auswahl für den Cache-Modus statischer Statische Inhalte im Cache speichern. Für Cloud CDN können jedoch zusätzliche Kosten anfallen.
- Klicken Sie auf Erstellen.
Hostregeln und Pfad-Matcher konfigurieren
Hostregeln und Pfad-Matcher sind Konfigurationskomponenten der URL-Zuordnung eines externen HTTP(S)-Load-Balancers.
- Klicken Sie auf Host- und Pfadregeln.
- Übernehmen Sie bei dem zuvor erstellten Back-End-Bucket
example-bucket
für Mode die Standardeinstellung Einfache Host- und Pfadregel.
Front-End konfigurieren
In diesem Abschnitt wird beschrieben, wie Sie das HTTPS-Protokoll konfigurieren und ein SSL-Zertifikat erstellen. Sie können auch ein vorhandenes Zertifikat auswählen oder ein selbstverwaltetes SSL-Zertifikat hochladen.
- Klicken Sie auf Front-End-Konfiguration.
Konfigurieren Sie die Werte der folgenden Felder:
- Protokoll: HTTPS
- Netzwerkdienststufe: Premium
- IP-Version: IPv4. Wenn Sie IPv6 bevorzugen, finden Sie weitere Informationen unter IPv6-Beendigung.
Im Feld IP-Adresse:
- Klicken Sie im Drop-down-Menü auf IP-Adresse erstellen.
- Geben Sie im Pop-up-Fenster Neue statische IP-Adresse reservieren als Name der IP-Adresse
example-ip
ein. - Klicken Sie auf Reservieren.
Wählen Sie für Port die Option 443 aus.
Wählen Sie im Feld Zertifikat die Option Neues Zertifikat erstellen aus. Das Formular zur Zertifikaterstellung wird in einem Steuerfeld angezeigt. Nehmen Sie folgende Einstellungen vor:
- Name:
example-ssl
- Erstellungsmodus: Von Google verwaltetes Zertifikat erstellen
- Domains:
www.example.com
. Wenn Sie Ihre Inhalte über zusätzliche Domains wie die Stammdomainexample.com
bereitstellen möchten, drücken Sie die Eingabetaste, um sie in weiteren Zeilen hinzuzufügen. Jedes Zertifikat hat ein Limit von 100 Domains.
- Name:
Klicken Sie auf Erstellen.
Klicken Sie auf Fertig.
Konfiguration prüfen
- Klicken Sie auf Prüfen und abschließen.
- Prüfen Sie die Back-End-Konfiguration, die Host- und Pfadregeln und die Front-End-Konfiguration.
- Klicken Sie auf Erstellen.
Möglicherweise müssen Sie einige Minuten warten, bis der Load-Balancer erstellt wurde.
Domain mit dem Load-Balancer verbinden
Klicken Sie nach der Erstellung des Load-Balancers auf dessen Namen: example-lb
. Notieren Sie die mit dem Load-Balancer verknüpfte IP-Adresse, z. B. 30.90.80.100
. Wenn Sie Ihre Domain auf den Load-Balancer verweisen möchten, erstellen Sie mit Ihrem Domain-Registrierungsdienst einen A
-Eintrag. Wenn Sie Ihrem SSL-Zertifikat mehrere Domains hinzugefügt haben, müssen Sie für jede Domain einen A
-Eintrag hinzufügen, der auf die IP-Adresse des Load-Balancers verweist. So erstellen Sie beispielsweise A
-Einträge für www.example.com
und example.com
:
NAME TYPE DATA www A 30.90.80.100 @ A 30.90.80.100
Weitere Informationen zu Google Domains finden Sie auf der Hilfeseite von Google Domains.
Empfohlen: Status des SSL-Zertifikats überwachen
Es kann 60 bis 90 Minuten dauern, bis Google Cloud das Zertifikat bereitstellt und die Website über den Load-Balancer verfügbar macht. So überwachen Sie den Status Ihres Zertifikats:
Console
- Öffnen Sie in der Google Cloud Console die Seite „Load-Balancing“.
Zur Seite „Load-Balancing“ - Klicken Sie auf den Namen Ihres Load-Balancers:
example-lb
. - Klicken Sie auf den Namen des SSL-Zertifikats, das dem Load-Balancer zugeordnet ist:
example-ssl
. - In den Zeilen Status und Domainstatus wird der Status des Zertifikats angezeigt. Beide müssen aktiv sein, damit das Zertifikat für Ihre Website gültig ist.
gcloud
Führen Sie den folgenden Befehl aus, um den Zertifikatstatus zu prüfen:
gcloud beta compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(name,managed.status)"
Führen Sie den folgenden Befehl aus, um den Domainstatus zu prüfen:
gcloud beta compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(managed.domainStatus)"
Weitere Informationen zum Zertifikatstatus finden Sie unter Fehlerbehebung bei SSL-Zertifikaten.
Website testen
Prüfen Sie nach Aktivierung des SSL-Zertifikats, ob der Inhalt aus dem Bucket bereitgestellt wird. Rufen Sie dazu https://www.example.com/test.html
auf, wobei test.html
ein Objekt ist, das in dem Bucket gespeichert ist, den Sie als Back-End verwenden. Wenn Sie das Attribut MainPageSuffix
festlegen, führt https://www.example.com
zu index.html
.
Bereinigen
Nachdem Sie die Anleitung zum Hosten einer statischen Website abgeschlossen haben, können Sie die Ressourcen, die Sie in Google Cloud erstellt haben, bereinigen, damit diese keine kostenpflichtigen Kontingente verbrauchen. In den folgenden Abschnitten erfahren Sie, wie Sie diese Ressourcen löschen oder deaktivieren.
Projekt löschen
Am einfachsten vermeiden Sie weitere Kosten, wenn Sie das zum Ausführen der Anleitung erstellte Projekt löschen.
So löschen Sie das Projekt:
- Wechseln Sie in der Cloud Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Load-Balancer und Bucket löschen
Wenn Sie nicht das gesamte Projekt löschen möchten, löschen Sie den Load-Balancer und den Bucket, den Sie für die Anleitung erstellt haben:
- Öffnen Sie in der Google Cloud Console die Seite „Load-Balancing“.
Zur Seite „Load-Balancing“ - Klicken Sie das Kästchen neben
example-lb
an. - Klicken Sie auf Löschen.
- Optional: Klicken Sie das Kästchen neben den Ressourcen an, die Sie zusammen mit dem Load-Balancer löschen möchten, z. B. den Bucket
my-static-assets
oder das SSL-Zertifikatexample-ssl
. - Klicken Sie auf Load-Balancer löschen oder Load-Balancer und ausgewählte Ressourcen löschen.
Reservierte IP-Adresse freigeben
So löschen Sie die reservierte IP-Adresse, die Sie für diese Anleitung verwendet haben:
Öffnen Sie in der Cloud Console die Seite Externe IP-Adressen.
Klicken Sie auf die Kästchen neben
example-ip
.Klicken Sie auf Statische Adresse freigeben.
Klicken Sie im Bestätigungsfenster auf Löschen.
Nächste Schritte
- Statische Website über HTTP bereitstellen
- Beispiele und Tipps für die Verwendung von Buckets zum Hosten einer statischen Website
- Fehlerbehebung beim Hosten einer statischen Website
- Statische Inhalte für eine dynamische Website hosten
- Andere Web-Serving-Lösungen von Google Cloud
- Weitere Anleitungen der Google Cloud Platform mit Cloud Storage
Jetzt testen
Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit von Cloud Storage in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
Cloud Storage kostenlos testen