HTTP-Header und Classic Load Balancer - Elastic Load Balancing

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.

HTTP-Header und Classic Load Balancer

Die HTTP-Anforderungen und -Antworten verwenden Header-Felder, um Informationen über HTTP-Nachrichten zu senden. Header-Felder sind durch einen Doppelpunkt getrennte Name/Wert-Paare, die durch eine Zeilenumschaltung und einen Zeilenvorschub getrennt sind. Ein Standardsatz von HTTP-Header-Feldern ist in RFC 2616, Nachrichten-Header definiert. Es sind auch Nicht-Standard-HTTP-Header verfügbar (und werden automatisch hinzugefügt), die von den Anwendungen häufig verwendet werden. Einige der Nicht-Standard-HTTP-Header besitzen ein X-Forwarded-Präfix. Classic Load Balancer unterstützen die folgenden X-Forwarded-Header.

Weitere Informationen zu HTTP-Verbindungen finden Sie unter Weiterleitung von Anforderungen im Benutzerhandbuch zu Elastic Load Balancing.

Voraussetzungen
  • Vergewissern Sie sich, dass Ihre Listener-Einstellungen die X-Forwarded-Header unterstützten. Weitere Informationen finden Sie unter Listener-Konfigurationen für Classic Load Balancer.

  • Konfigurieren Sie Ihren Webserver, um Client-IP-Adressen zu protokollieren.

X-Forwarded-For

Der X-Forwarded-For-Anforderungs-Header wird automatisch hinzugefügt und hilft Ihnen, die IP-Adresse eines Clients zu identifizieren, wenn Sie einen HTTP- oder HTTPS-Load-Balancer verwenden. Da Load Balancer Datenverkehr zwischen Clients und Servern abfangen, enthalten Ihre Server-Zugriffsprotokolle nur die IP-Adresse des Load Balancer. Verwenden Sie den X-Forwarded-For-Anforderungs-Header, um die IP-Adresse des Clients anzuzeigen. Elastic Load Balancing speichert die IP-Adresse des Clients im X-Forwarded-For-Anforderungs-Header und übergibt den Header an Ihren Server. Wenn der X-Forwarded-For-Anforderungsheader nicht in der Anforderung enthalten ist, erstellt der Load Balancer einen Header mit der Client-IP-Adresse als Anforderungswert. Andernfalls fügt der Load Balancer die Client-IP-Adresse dem vorhandenen Header hinzu und leitet den Header dann an Ihren Server weiter. Der X-Forwarded-For-Anforderungsheader kann mehrere IP-Adressen enthalten, die durch Kommas getrennt sind. Die Adresse ganz links ist die Client-IP, über die die Anforderung zuerst gestellt wurde. Darauf folgen alle nachfolgenden Proxy-Bezeichner in einer Kette.

Der X-Forwarded-For-Anforderungs-Header besitzt das folgende Format:

X-Forwarded-For: client-ip-address

Nachfolgend finden Sie ein Beispiel für einen X-Forwarded-For-Anforderungs-Header für einen Client mit der IP-Adresse 203.0.113.7.

X-Forwarded-For: 203.0.113.7

Im Folgenden finden Sie ein Beispiel für einen X-Forwarded-For Anforderungsheader für einen Client mit der IPv6 Adresse. 2001:DB8::21f:5bff:febf:ce22:8a2e

X-Forwarded-For: 2001:DB8::21f:5bff:febf:ce22:8a2e

X-Forwarded-Proto

Der X-Forwarded-Proto-Anforderungs-Header hilft Ihnen, das Protokoll (HTTP oder HTTPS) zu identifizieren, das ein Client für die Verbindung zu Ihrem Load Balancer verwendet hat. Ihre Server-Zugriffsprotokolle enthalten nur das Protokoll zwischen dem Server und dem Load Balancer. Sie enthalten keine Informationen über das Protokoll zwischen dem Client und dem Load Balancer. Verwenden Sie den X-Forwarded-Proto-Anforderungs-Header, um das Protokoll zwischen dem Client und dem Load Balancer zu überprüfen. Elastic Load Balancing speichert das Protokoll zwischen dem Client und dem Load Balancer im X-Forwarded-Proto-Anforderungs-Header und übergibt den Header an den Server.

Ihre Anwendung oder Website kann das im X-Forwarded-Proto-Anforderungs-Header gespeicherte Protokoll verwenden, um eine Rückmeldung auszugeben, die auf die entsprechende URL umleitet.

Der X-Forwarded-Proto-Anforderungs-Header besitzt das folgende Format:

X-Forwarded-Proto: originatingProtocol

Das folgende Beispiel enthält einen X-Forwarded-Proto-Anforderungs-Header für eine Anforderung, die vom Client als HTTPS-Anforderung ausgegeben wurde:

X-Forwarded-Proto: https

X-Forwarded-Port

Mit dem X-Forwarded-Port-Anforderungs-Header können Sie den Zielport identifizieren, den der Client für die Verbindung mit dem Load Balancer verwendet hat.