|
|
Veröffentlicht amVor 28 Sekunden
|
|
|

Anforderung: Beim Zugriff auf die Website mit nginx Reverse Proxy wurden gelegentlich 502-Fehler gemeldet, immer wegen Ausfalls des Backends oder Netzwerkschwankungen. Schließlich ergab sich bei der Überprüfung der nginx-Fehlerprotokolle weitere Gründe.
Es gibt tatsächlich viele Ursachen für nginx-502-Fehler. Wenn ein 502 Bad Gateway-Server einen Fehler hat und als Proxy oder Gateway agiert, erhält Ihr Server möglicherweise nicht die korrekte Upstream-Antwort, wenn er versucht, die Anfrage zu bearbeiten.
nginx-Fehlerprotokoll:
*753983 Upstream einen zu großen Header beim Lesen des Antwortheaders vom Upstream gesendet hat, Client: xxx, Server: test-sso.rms-cloud.com, Anfrage: "GET /itsvse HTTP/2.0", Upstream: "http://127.0.0.1:29090/itsvse", Host: "xxx.com"
Lösung:
NGINX fügt folgende Konfiguration hinzu:
Konfigurationsbeschreibung:
proxy_buffer_size
Syntax: proxy_buffer_size size;
Default: proxy_buffer_size 4k|8k;
Context: http, server, location
Stellen Sie die Puffergröße für das Lesen des ersten Teils der vom Proxy-Server empfangenen Antwort ein. Dieser Teil enthält üblicherweise einen kleinen Antwort-Header; Wenn die Puffergröße überschritten wird, gilt die Antwort als ungültig. Standardmäßig entspricht die Puffergröße einer Speicherseite. Dies ist 4K oder 8K, je nach Plattform. Es kann jedoch kleiner gemacht werden.
proxy_buffers
Syntax: proxy_buffers number size;
Default: proxy_buffers 8 4k|8k;
Context: http, server, location
Stellen Sie die Anzahl und Größe der Puffer für eine einzelne Verbindung ein, um Antworten vom Proxy-Server zu lesen. Standardmäßig entspricht die Puffergröße einer Speicherseite. Dies entspricht 4K oder 8K, je nach Plattform.
proxy_busy_buffers_size
Syntax: proxy_busy_buffers_size size;
Default: proxy_busy_buffers_size 8k|16k;
Context: http, server, location
Wenn das Antwortpuffern vom Proxy-Server aktiviert ist, ist die Gesamtgröße der Puffer, die möglicherweise mit dem Senden von Antworten an Clients beschäftigt sind, bevor die Antwort vollständig gelesen ist, begrenzt. Die verbleibenden Puffer können hingegen verwendet werden, um Antworten auszulesen und einen Teil der Antwort bei Bedarf in temporäre Dateien zu puffern. Standardmäßig ist die Größe durch die Größe der beiden Puffer begrenzt, die von den Anweisungen proxy_buffer_size und proxy_bBuffers gesetzt werden. |
Vorhergehend:Einführung in die Netzwerkkommunikation eSIM, EID und eUICC
|