Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Benutzerdefinierte Header
Mit benutzerdefinierten HTTP-Headern können Sie Header für jede HTTP-Antwort angeben. Response-Header können für Debugging-, Sicherheits- und Informationszwecke verwendet werden. Sie können Header in der Amplify-Konsole angeben oder indem Sie die customHttp.yml
Datei einer App herunterladen, bearbeiten und im Stammverzeichnis des Projekts speichern. Die detaillierten Schritte finden Sie unter Benutzerdefinierte Header einrichten.
Bisher wurden benutzerdefinierte HTTP-Header für eine App angegeben, indem entweder die Build-Spezifikation (Buildspec) in der bearbeitet wurde AWS Management Console oder indem die amplify.yml
Datei heruntergeladen und aktualisiert und im Stammverzeichnis des Projekts gespeichert wurde. Auf diese Weise angegebene benutzerdefinierte Header sollten aus der Buildspec und der Datei migriert werden. amplify.yml
Anweisungen finden Sie unter Migrieren von benutzerdefinierten Headern.
Benutzerdefiniertes Header-YAML-Format
Geben Sie benutzerdefinierte Header im folgenden YAML-Format an:
customHeaders: - pattern:
'*.json'
headers: - key:'custom-header-name-1'
value:'custom-header-value-1'
- key:'custom-header-name-2'
value:'custom-header-value-2'
- pattern:'/path/*'
headers: - key:'custom-header-name-1'
value:'custom-header-value-2'
Verwenden Sie für ein Monorepo das folgende YAML-Format:
applications: - appRoot:
app1
customHeaders: - pattern:'**/*'
headers: - key:'custom-header-name-1'
value:'custom-header-value-1'
- appRoot:app2
customHeaders: - pattern:'/path/*.json'
headers: - key:'custom-header-name-2'
value:'custom-header-value-2'
Wenn Sie Ihrer App benutzerdefinierte Header hinzufügen, geben Sie Ihre eigenen Werte für Folgendes an:
- pattern
-
Benutzerdefinierte Header werden auf alle URL-Dateipfade angewendet, die dem Muster entsprechen.
- Header
-
Definiert die Header, die dem Dateimuster entsprechen.
- Schlüssel
-
Der Name des benutzerdefinierten Headers.
- Wert
-
Der Wert des benutzerdefinierten Headers.
Weitere Informationen zu HTTP-Headern finden Sie in Mozillas Liste der HTTP-Header
Benutzerdefinierte Header einrichten
Es gibt zwei Möglichkeiten, benutzerdefinierte HTTP-Header für eine Amplify-App anzugeben. Sie können Header in der Amplify-Konsole angeben oder Sie können Header angeben, indem Sie die customHttp.yml
Datei einer App herunterladen, bearbeiten und im Stammverzeichnis Ihres Projekts speichern.
Um benutzerdefinierte Header für eine App festzulegen und sie in der Konsole zu speichern
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amplify-Konsole
. -
Wählen Sie die App aus, für die Sie benutzerdefinierte Header festlegen möchten.
-
Wählen Sie im Navigationsbereich Hosting und anschließend Benutzerdefinierte Header aus.
-
Wählen Sie auf der Seite Benutzerdefinierte Kopfzeilen die Option Bearbeiten aus.
-
Geben Sie im Fenster Benutzerdefinierte Header bearbeiten die Informationen für Ihre benutzerdefinierten Header im YAML-Format für benutzerdefinierte Header ein.
-
Geben Sie für
pattern
das passende Muster ein. -
Geben Sie für
key
den Namen der benutzerdefinierten Kopfzeile ein. -
Geben Sie für
value
den Wert des benutzerdefinierten Headers ein.
-
-
Wählen Sie Speichern.
-
Stellen Sie die App erneut bereit, um die neuen benutzerdefinierten Header anzuwenden.
-
Navigieren Sie bei einer CI/CD-App zu dem Zweig, den Sie bereitstellen möchten, und wählen Sie Diese Version erneut bereitstellen aus. Sie können auch einen neuen Build von Ihrem Git-Repository aus ausführen.
-
Für eine App zur manuellen Bereitstellung stellen Sie die App erneut in der Amplify-Konsole bereit.
-
Um benutzerdefinierte Header für eine App festzulegen und sie im Stammverzeichnis Ihres Repositorys zu speichern
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amplify-Konsole
. -
Wählen Sie die App aus, für die Sie benutzerdefinierte Header festlegen möchten.
-
Wählen Sie im Navigationsbereich Hosting und anschließend Benutzerdefinierte Header aus.
-
Wählen Sie auf der Seite Benutzerdefinierte Header die Option YML herunterladen aus.
-
Öffnen Sie die heruntergeladene
customHttp.yml
Datei im Code-Editor Ihrer Wahl und geben Sie die Informationen für Ihre benutzerdefinierten Header im YAML-Format für benutzerdefinierte Header ein.-
Geben Sie für
pattern
das passende Muster ein. -
Geben Sie für
key
den Namen der benutzerdefinierten Kopfzeile ein. -
Geben Sie für
value
den Wert des benutzerdefinierten Headers ein.
-
-
Speichern Sie die bearbeitete
customHttp.yml
Datei im Stammverzeichnis Ihres Projekts. Wenn Sie mit einem Monorepo arbeiten, speichern Sie diecustomHttp.yml
Datei im Stammverzeichnis Ihres Repos. -
Stellen Sie die App erneut bereit, um die neuen benutzerdefinierten Header anzuwenden.
-
Führen Sie für eine CI/CD-App einen neuen Build aus Ihrem Git-Repository aus, der die neue
customHttp.yml
Datei enthält. -
Für eine App mit manueller Bereitstellung stellen Sie die App erneut in der Amplify-Konsole bereit und fügen Sie die neue
customHttp.yml
Datei mit den Artefakten hinzu, die Sie hochladen.
-
Anmerkung
Benutzerdefinierte Header, die in der customHttp.yml
Datei festgelegt und im Stammverzeichnis der App bereitgestellt werden, überschreiben benutzerdefinierte Header, die im Abschnitt Benutzerdefinierte Header in der Amplify-Konsole definiert sind.
Migrieren von benutzerdefinierten Headern
Bisher wurden benutzerdefinierte HTTP-Header für eine App entweder durch Bearbeitung der Buildspec in der Amplify-Konsole oder durch Herunterladen und Aktualisieren der amplify.yml
Datei und Speichern im Stammverzeichnis des Projekts angegeben. Es wird dringend empfohlen, dass Sie Ihre benutzerdefinierten Header aus der Buildspec und der Datei migrieren. amplify.yml
Geben Sie Ihre benutzerdefinierten Header im Abschnitt Benutzerdefinierte Header der Amplify-Konsole an oder indem Sie die Datei herunterladen und bearbeiten. customHttp.yml
Um benutzerdefinierte Header zu migrieren, die in der Amplify-Konsole gespeichert sind
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amplify-Konsole
. -
Wählen Sie die App aus, für die die benutzerdefinierte Header-Migration durchgeführt werden soll.
-
Wählen Sie im Navigationsbereich Hosting, Build-Einstellungen aus. Im Abschnitt App-Build-Spezifikation können Sie die Buildspec Ihrer App überprüfen.
-
Wählen Sie Herunterladen, um eine Kopie Ihrer aktuellen Buildspec zu speichern. Sie können später auf diese Kopie verweisen, wenn Sie Einstellungen wiederherstellen müssen.
-
Wenn der Download abgeschlossen ist, wählen Sie Bearbeiten.
-
Notieren Sie sich die benutzerdefinierten Header-Informationen in der Datei, da Sie sie später in Schritt 9 verwenden werden. Löschen Sie im Bearbeitungsfenster alle benutzerdefinierten Header aus der Datei und wählen Sie Speichern.
-
Wählen Sie im Navigationsbereich Hosting, Benutzerdefinierte Header aus.
-
Wählen Sie auf der Seite Benutzerdefinierte Header die Option Bearbeiten aus.
-
Geben Sie im Fenster Benutzerdefinierte Kopfzeilen bearbeiten die Informationen für Ihre benutzerdefinierten Kopfzeilen ein, die Sie in Schritt 6 gelöscht haben.
-
Wählen Sie Speichern.
-
Stellen Sie alle Branches erneut bereit, auf die die neuen benutzerdefinierten Header angewendet werden sollen.
Um benutzerdefinierte Header von amplify.yml zu CustomHttp.yml zu migrieren
-
Navigieren Sie zu der
amplify.yml
Datei, die derzeit im Stammverzeichnis Ihrer App bereitgestellt ist. -
Öffnen Sie
amplify.yml
im Code-Editor Ihrer Wahl. -
Notieren Sie sich die benutzerdefinierten Header-Informationen in der Datei, da Sie sie später in Schritt 8 verwenden werden. Löschen Sie die benutzerdefinierten Header in der Datei. Speichern und schließen Sie die Datei.
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Amplify-Konsole
. -
Wählen Sie die App aus, für die Sie benutzerdefinierte Header festlegen möchten.
-
Wählen Sie im Navigationsbereich Hosting, Benutzerdefinierte Header aus.
-
Wählen Sie auf der Seite Benutzerdefinierte Header die Option Herunterladen aus.
-
Öffnen Sie die heruntergeladene
customHttp.yml
Datei im Code-Editor Ihrer Wahl und geben Sie die Informationen für Ihre benutzerdefinierten Header ein, aus denen Sieamplify.yml
in Schritt 3 gelöscht haben. -
Speichern Sie die bearbeitete
customHttp.yml
Datei im Stammverzeichnis Ihres Projekts. Wenn Sie mit einem Monorepo arbeiten, speichern Sie die Datei im Stammverzeichnis Ihres Repos. -
Stellen Sie die App erneut bereit, um die neuen benutzerdefinierten Header anzuwenden.
-
Führen Sie für eine CI/CD-App einen neuen Build aus Ihrem Git-Repository aus, der die neue
customHttp.yml
Datei enthält. -
Für eine App mit manueller Bereitstellung stellen Sie die App erneut in der Amplify-Konsole bereit und fügen Sie die neue
customHttp.yml
Datei mit Artefakten hinzu, die Sie hochladen.
-
Anmerkung
Benutzerdefinierte Header, die in der customHttp.yml
Datei festgelegt und im Stammverzeichnis der App bereitgestellt werden, überschreiben die benutzerdefinierten Header, die im Abschnitt Benutzerdefinierte Header der Amplify-Konsole definiert sind.
Benutzerdefinierte Monorepo-Header
Wenn Sie benutzerdefinierte Header für eine App in einem Monorepo angeben, beachten Sie die folgenden Einrichtungsanforderungen:
-
Es gibt ein spezielles YAML-Format für ein Monorepo. Die korrekte Syntax finden Sie unter. Benutzerdefiniertes Header-YAML-Format
-
Sie können benutzerdefinierte Header für eine Anwendung in einem Monorepo mithilfe des Abschnitts Benutzerdefinierte Header der Amplify-Konsole angeben. Sie müssen Ihre Anwendung erneut bereitstellen, um die neuen benutzerdefinierten Header anzuwenden.
-
Als Alternative zur Verwendung der Konsole können Sie benutzerdefinierte Header für eine App in einem Monorepo in einer Datei angeben.
customHttp.yml
Sie müssen diecustomHttp.yml
Datei im Stammverzeichnis Ihres Repos speichern und dann die Anwendung erneut bereitstellen, um die neuen benutzerdefinierten Header anzuwenden. In dercustomHttp.yml
Datei angegebene benutzerdefinierte Header überschreiben alle benutzerdefinierten Header, die im Abschnitt Benutzerdefinierte Header der Amplify-Konsole angegeben wurden.
Beispiel für Sicherheitsheader
Benutzerdefinierte Sicherheitsheader ermöglichen die Durchsetzung von HTTPS, die Verhinderung von XSS-Angriffen und den Schutz Ihres Browsers vor Clickjacking. Verwenden Sie die folgende YAML-Syntax, um benutzerdefinierte Sicherheitsheader auf Ihre App anzuwenden.
customHeaders: - pattern: '**' headers: - key: 'Strict-Transport-Security' value: 'max-age=31536000; includeSubDomains' - key: 'X-Frame-Options' value: 'SAMEORIGIN' - key: 'X-XSS-Protection' value: '1; mode=block' - key: 'X-Content-Type-Options' value: 'nosniff' - key: 'Content-Security-Policy' value: "default-src 'self'"
Benutzerdefinierte Cache-Control-Header
Apps, die mit Amplify gehostet werden, berücksichtigen die vom Ursprung gesendeten Cache-Control
Header, es sei denn, Sie überschreiben sie mit benutzerdefinierten Headern, die Sie definieren. Amplify wendet benutzerdefinierte Cache-Control-Header nur für erfolgreiche Antworten mit einem Statuscode an. 200 OK
Dadurch wird verhindert, dass Fehlerantworten zwischengespeichert und anderen Benutzern, die dieselbe Anfrage stellen, zugestellt werden.
Sie können die s-maxage
Direktive manuell anpassen, um mehr Kontrolle über die Leistung und Bereitstellungsverfügbarkeit Ihrer App zu haben. Um beispielsweise die Dauer zu verlängern, für die Ihre Inhalte am Edge zwischengespeichert bleiben, können Sie die Gültigkeitsdauer (Time to Live, TTL) manuell erhöhen, indem Sie s-maxage
auf einen Wert aktualisieren, der länger als die Standardeinstellung 600 Sekunden (10 Minuten) ist.
Verwenden Sie das folgende YAML-Formats-maxage
, um einen benutzerdefinierten Wert für anzugeben. In diesem Beispiel wird der zugehörige Inhalt 3600 Sekunden (eine Stunde) lang am Edge zwischengespeichert.
customHeaders: - pattern: '/img/*' headers: - key: 'Cache-Control' value: 's-maxage=3600'
Weitere Informationen zur Steuerung der Anwendungsleistung mithilfe von Headern finden Sie unter. Verwenden von Headern zur Steuerung der Cache-Dauer