Ich habe einen Nginx-Webserver, der als Reverse-Proxy fungiert, um Anfragen zur weiteren Bearbeitung an Apache weiterzuleiten (ich bitte Sie, nicht zu fragen, warum). Ich habe eine Anfrage, an die ich einen benutzerdefinierten Header anhängen möchte, und ich möchte, dass Nginx diesen benutzerdefinierten Header an Apache weiterleitet, damit ich in einer App etwas damit anfangen kann.
Ich habe die HttpProxyModule
Dokumente durchgesehen , aber sie sind nicht sehr aussagekräftig, selbst wenn ich am richtigen Ort bin (es könnte sehr gut sein, dass ich es nicht bin).
Wie kann ich Nginx dazu bringen, einen X-CUSTOM-REFERRER
Header weiterzuleiten ? Darüber hinaus möchte ich, falls möglich, einen benutzerdefinierten Header weiterleiten , der hereinkommt. Wenn der letztere zu viel verlangt, würde der erstere für meinen aktuellen Bedarf ausreichen.
Wie Sie sehen, ist Nginx für mich sehr neu, daher wäre die Korrekturversion hilfreich.
Vielen Dank.
AKTUALISIEREN
Das relevante Snippet aus meiner bestehenden Konfiguration:
location / {
proxy_pass http://preview;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# proxy_set_header X-Custom-Referrer $x_custom_referrer;
}
quelle
X-Custom-Referrer
Header lesen und weitergeben?proxy_set_header X-Custom-Referrer $x_custom_referrer
oder etwas in diesem Sinne?$http_x_custom_referrer
. Alle vom Client gesendeten Header sollten jedoch automatisch an das Backend weitergeleitet werden. Hast duproxy_pass_request_headers off
irgendwo gesetzt?proxy_set_header
; auch Sie verwenden$x_custom_referrer
anstelle von$http_x_custom_referrer
...$http_<custom_header_field>
statt$proxy_add_<custom_header_field>
Mit dem Modul ngx_headers_more können Sie http-Header ändern und hinzufügen.
quelle
proxy_pass
.Sie können übergeordnete Header (mit $ http_ beginnend) und zusätzliche benutzerdefinierte Header verwenden. Beispielsweise:
Gehen Sie als nächstes zur Konsole und stellen Sie eine Anfrage mit dem Header des Benutzers:
Die Antwort enthält X-Hdr-01 (vom Server festgelegt) und X-Upstream-01 (vom Client festgelegt):
quelle
proxy_pass
Richtlinie vorgeschaltet werden.