Statische Website erstellen
Dieses Lernprogramm zeigt, wie Sie eine statische Website auf IBM Cloud® Object Storagehosten, einschließlich der Erstellung eines Buckets, des Hochladens von Inhalten und der Konfiguration Ihrer neuen Website.
Das Hosting statischer Websites mit IBM Cloud Object Storage stellt statischen Inhalt für den öffentlichen Zugriff bereit, der Benutzern Flexibilität, einfache Bereitstellung und hohe Verfügbarkeit bietet. Dieses Lernprogramm enthält Anweisungen zur Verwendung von cURL, der AWS-CLI sowie der Konsole. Wählen Sie Ihren Pfad für dieses Lernprogramm aus, indem Sie die Links zum Wechseln zwischen den Anweisungen über dem Titel dieses Abschnitts verwenden.
Szenario
Das Szenario für dieses Lernprogramm vereinfacht das Web-Hosting auf seine Grundlagen, um die beteiligten Schritte hervorzuheben. Obwohl nicht jede Konfigurationsoption in diesem Lernprogramm behandelt wird, führt das ordnungsgemäße Durcharbeiten dieses Lernprogramms zu Inhalten, auf die über das Web zugegriffen werden kann.
Vorbemerkungen
Stellen Sie sicher, dass Sie über das verfügen, was Sie starten müssen:
- Eine Instanz von IBM Cloud Object Storage
- Inhalt in fester Form, wie Text (HTML wäre perfekt) und Bilddateien
Überprüfen Sie, ob Sie den entsprechenden Zugriff auf die Instanz von IBM Cloud Object Storage haben, die Sie verwenden werden, oder auf die entsprechenden Berechtigungen für die Buckets, die Sie für dieses Lernprogramm verwenden werden.
Zur Verwendung der IBM Cloud-CLI in diesem Lernprogramm müssen Sie das Object Storage-Plug-in konfigurieren, um die Serviceinstanz, die Sie verwenden wollen, und die Standardregion anzugeben, in der Ihr neues Bucket erstellt werden soll.
Für öffentlichen Zugriff konfiguriertes Bucket erstellen
Das Erstellen eines Buckets für eine statische Website erfordert öffentlichen Zugriff. Es gibt eine Reihe von Optionen für die Konfiguration des öffentlichen Zugriffs. Insbesondere wird durch die Verwendung der IAM-Rolle ObjectReader verhindert, dass der Inhalt des Buckets aufgelistet wird, ohne dass der statische Inhalt im Internet angezeigt werden kann. Wenn Sie das Anzeigen der Inhaltsliste zulassen wollen, verwenden Sie die IAM-Rolle ContentReader für Ihr Bucket.
Bucket erstellen
Ersetzen Sie nach der Konfiguration des CLI-Plug-in den Platzhalterinhalt wie im Beispielbefehl gezeigt, um ein Bucket zu erstellen:
ibmcloud cos bucket-create --bucket <bucketname>
Nachdem Sie sich bei der Konsole angemeldet haben und nachdem Sie eine Instanz von IBM Cloud Object Storageerstellen, können Sie ein Bucket erstellen. Klicken Sie auf die Schaltfläche "Create bucket" und wählen Sie aus den Optionen, wie in Abbildung 1 dargestellt. Wählen Sie die Karte aus, die "Customize your bucket" lautet.
Der Container für die statischen Dateien auf Ihrer Website befindet sich in einem Bucket, den Sie benennen können. Der von Ihnen erstellte Name muss eindeutig sein, darf keine persönlichen oder identifizierenden Informationen enthalten, darf keine zwei Punkte, Punkte oder Bindestriche in einer Zeile enthalten und muss mit alphanumerischen Zeichen beginnen und enden (ASCII-Zeichensatzelemente 3-63). Ein Beispiel finden Sie in Abbildung 2.
Öffentlichen Zugriff festlegen
In allen Szenarios für dieses Lernprogramm möchten Sie die Benutzerschnittstelle in der Konsole verwenden, um öffentlichen Zugriff auf Ihre neue Website zuzulassen.
Beim Erstellen eines Buckets zum Hosten von statischem Websiteinhalt gibt es eine Option zum Aktivieren des öffentlichen Zugriffs im Rahmen des Bucketerstellungsprozesses. Siehe Abbildung 3 für die Option zum Aktivieren des öffentlichen Zugriffs auf Ihr Bucket. Eine Erläuterung der Optionen für das "Indexdokument" und das "Fehlerdokument" finden Sie weiter unten im Abschnitt Optionen für Ihre Website konfigurieren. Sie können die Basiskonfiguration mit diesem Schritt abschließen, bevor Sie Inhalt in Ihr Bucket hochladen, wie im nächsten Schritt gezeigt.
Inhalt in Ihr Bucket hochladen
Der Inhalt Ihrer gehosteten statischen Website-Dateien konzentriert sich natürlich auf Informationen und Medien. Ein gängiger Ansatz zum Erstellen von Inhalten für statische Websites sind Open-Source-Generatoren, die unter StaticGenaufgelistet sind. Für die Zwecke dieses Lernprogramms werden nur zwei Dateien benötigt:
- Eine in der Regel in HTML geschriebene Indexseite mit dem Namen
index.html
, die standardmäßig für Besucher Ihrer Site geladen wird. - Eine Fehlerseite, auch in HTML und hier namens
error.html
. Normalerweise wird die Fehlerseite geladen, wenn ein Besucher versucht, auf ein Objekt zuzugreifen, das nicht vorhanden ist oder keinen öffentlichen Zugriff hat.
Andere Dateien wie Bilder, PDFs oder Videos können ebenfalls in Ihr Bucket hochgeladen werden (dieses Lernprogramm konzentriert sich jedoch nur auf eine Mindestgruppe von Anforderungen).
Stellen Sie im Rahmen dieses Lernprogramms die HTML-Seiten für den Index und die Fehlerbehandlung in ein lokales Verzeichnis. Ersetzen Sie den Platzhalterinhalt wie im Beispielbefehl gezeigt, um Ihre HTML-Dateien hochzuladen:
ibmcloud cos object-put --bucket BUCKET_NAME --key KEY [--body FILE_PATH]
Möglicherweise haben Sie die Basiskonfiguration für das Hosting Ihrer statischen Website bereits abgeschlossen. Dateien können direkt in die Konsole hochgeladen werden, nachdem Sie Ihr Bucket benannt und konfiguriert haben. Beachten Sie, dass der Schritt optional ist, wie in Abbildung 4 dargestellt, und jederzeit vor dem Testen Ihrer neuen gehosteten Website auftreten kann.
Für den Rest des Lernprogramms wird angenommen, dass der Objektschlüssel für die Indexseite index.html
und der Schlüssel für das Fehlerdokument error.html
ist, obwohl jeder geeignete Dateiname für das Suffix oder den
Schlüssel verwendet werden kann.
Optionen für Ihre Website konfigurieren
Es gibt mehr Optionen, als dieses Lernprogramm beschreiben kann, und für den Zweck dieses Lernprogramms müssen wir nur die Konfiguration festlegen, um mit der Verwendung der statischen Website-Funktion zu beginnen.
Erstellen Sie eine JSON-Datei mit den entsprechenden Konfigurationsdaten:
{
"ErrorDocument": {
"Key": "error.html"
},
"IndexDocument": {
"Suffix": "index.html"
}
}
Ersetzen Sie den Platzhalterinhalt wie im Beispielbefehl gezeigt, um die Website zu konfigurieren:
ibmcloud cos bucket-website-put --bucket BUCKET_NAME --website-configuration file://<filename.json>
Möglicherweise haben Sie diesen Schritt während der Erstellung Ihres Buckets ausgeführt, da die Basiskonfiguration für Ihre gehostete statische Website bestimmt, wann und wie Inhalt angezeigt wird. Für Besucher Ihrer Website, die keinen Schlüssel oder keine Webseite bereitstellen, wird stattdessen die Standarddatei angezeigt. Wenn Ihre Benutzer auf einen Fehler stoßen, bestimmt der Schlüssel für die Fehlerseite, welche Inhalte Besucher erhalten. Die Konfigurationsoptionen für die Standard-und Fehlerseiten werden zur Referenz wiederholt.
Testen und Besuchen Ihrer neuen Website
Nachdem Sie Ihr Bucket so konfiguriert haben, dass HTTP-Header mit dem Beispielbefehl bereitgestellt werden, müssen Sie nur noch die URL für die Site aufrufen, um Ihre neue Site zu testen. Beachten Sie das angezeigte Protokoll (http), nachdem Sie die Platzhalter durch Ihre eigenen Optionen ersetzt haben, die Sie zuvor in diesem Lernprogramm ausgewählt haben:
http://<bucketname>.s3-web.<endpoint>/
Mit dem erfolgreichen Test Ihrer neuen Site können Sie jetzt weitere Optionen erkunden und weitere Inhalte hinzufügen.
Nächste Schritte
Eine ausführliche Beschreibung der Konfigurationsoptionen für IBM Cloud Object Storage gehostete statische Websites finden Sie in der API-Dokumentation.