|
|
Opublikowano28 sekund temu
|
|
|

Wymóg: Podczas korzystania z odwrotnego proxy nginx do dostępu do strony pojawiały się okazjonalne błędy 502, zawsze z powodu niedostępności backendu lub wahań sieci. Ostatecznie sprawdzenie logów błędów nginx ujawniło inne przyczyny.
W rzeczywistości istnieje wiele przyczyn błędów nginx 502. Gdy serwer Złej Bramy 502 ma błąd i działa jako proxy lub brama, Twój serwer może nie otrzymać poprawnej odpowiedzi upstream podczas próby przetworzenia żądania.
Lognik błędów NGINX:
*753983 upstream wysłał zbyt duży nagłówek podczas odczytu nagłówka odpowiedzi z upstream, klient: xxx, serwer: test-sso.rms-cloud.com, żądanie: "GET /itsvse HTTP/2.0", upstream: "http://127.0.0.1:29090/itsvse", host: "xxx.com"
Rozwiązanie:
nginx dodaje następującą konfigurację:
Opis konfiguracji:
proxy_buffer_size
Syntax: proxy_buffer_size size;
Default: proxy_buffer_size 4k|8k;
Context: http, server, location
Ustaw rozmiar bufora do odczytu pierwszej części odpowiedzi otrzymanej od serwera proxy. Ta część zwykle zawiera mały nagłówek odpowiedzi; Jeśli rozmiar bufora zostanie przekroczony, odpowiedź jest uznawana za nieprawidłową. Domyślnie rozmiar bufora równa się jednej stronie pamięci. Jest to 4K lub 8K, w zależności od platformy. Jednak może być zmniejszony.
proxy_buffers
Syntax: proxy_buffers number size;
Default: proxy_buffers 8 4k|8k;
Context: http, server, location
Ustaw liczbę i rozmiar buforów dla pojedynczego połączenia do odczytu odpowiedzi z serwera proxy. Domyślnie rozmiar bufora to jedna strona pamięci. Jest to 4K lub 8K, w zależności od platformy.
proxy_busy_buffers_size
Syntax: proxy_busy_buffers_size size;
Default: proxy_busy_buffers_size 8k|16k;
Context: http, server, location
Gdy buforowanie odpowiedzi z serwera proxy jest włączone, całkowity rozmiar buforów, które mogą być zajęte wysyłaniem odpowiedzi klientom przed pełnym odczytem odpowiedzi, jest ograniczony. Tymczasem pozostałe bufory mogą być używane do odczytu odpowiedzi i buforowania części odpowiedzi do plików tymczasowych w razie potrzeby. Domyślnie rozmiar jest ograniczony przez rozmiar dwóch buforów określonych przez instrukcje proxy_buffer_size i proxy_bBuffers. |
Poprzedni:Wprowadzenie do komunikacji sieciowej eSIM, EID i eUICC
|