logo

Zmienne NGINX

Zmienne są naturalną częścią języków programowania. To po prostu kontenery przechowujące różne wartości w językach imperatywnych, takich jak Perl, C/C++, powłoka Bourne'a, Perl. Wartościami mogą być ciągi znaków, takie jak „witaj, świecie”, liczby, takie jak „3,14”, lub nawet skomplikowane rzeczy, takie jak odniesienia do tablic lub tabel mieszania w tych językach.

Jednak w przypadku języka konfiguracyjnego Nginx zmienne mogą przechowywać tylko jeden typ wartości, tj. ciągi znaków. Ale jest interesujący wyjątek: 3r & Dmoduł party ngx_array_var rozszerza zmienne Nginx tak, aby zawierały tablice, ale jest to implementowane poprzez zakodowanie wskaźnika C jako wartości ciągu binarnego za sceną.

Zmienna składnia

Weź pod uwagę, że nasz plik konfiguracyjny nginx.conf zawiera następujący wiersz:

 set $a 'hello world'; 

Tutaj przypisujemy wartość zmiennej „$a” poprzez dyrektywę konfiguracyjną set, która pochodzi ze standardowego modułu nginx_rewrite. I tutaj przypisujemy wartość ciągu „witaj świecie” do „$a”.

Z powyższego przykładu widzimy, że nazwa zmiennej Nginx ma przed sobą znak dolara ($). Dlatego możemy powiedzieć, że ilekroć chcemy dodać odwołanie do zmiennej nginx w pliku konfiguracyjnym, musimy dodać przedrostek dolara ($).

Zobaczmy inny prosty przykład,

 set $a hello; set $b '$a, $a'; 

Z powyższego przykładu widzimy, że zmienna $a została użyta do skonstruowania wartości zmiennej $b. Zatem po zakończeniu wykonywania tych dwóch dyrektyw wartość $a to „witaj”, a $b to „witaj, witaj”. Technika ta nazywana jest „interpolacją zmiennych”.

Zobaczmy listę zmiennych w Nginx:

Zmienny Opis
$ancient_przeglądarka Ta zmienna jest równa wartości ustawionej przez dyrektywę Ancient_browser_value, jeśli przeglądarka została zidentyfikowana jako stara.
$nazwa_argumentu Nazwa argumentu w wierszu żądania.
$argumenty Lista argumentów w wierszu żądania.
$binary_remote_addr (ngx_http_core_module) Adres klienta w postaci binarnej. Długość wartości wynosi zawsze 4 bajty dla adresów IP4 lub 16 bajtów dla adresów IPv6.
$binary_remote_addr (ngx_stream_core_module) Adres klienta w postaci binarnej. Długość wartości wynosi zawsze 4 bajty dla adresów IP4 lub 16 bajtów dla adresów IPv6.
$body_bytes_sent Liczba bajtów wysłanych do klienta, nie liczy się nagłówek odpowiedzi.
Otrzymano $bajtów Liczba bajtów otrzymanych od klienta.
$bytes_sent (ngx_http_core_module) Liczba bajtów wysłanych do klienta.
$bytes_sent (ngx_http_log_module) Liczba bajtów wysłanych do klienta.
$bytes_sent (ngx_stream_core_module) Liczba bajtów wysłanych do klienta.
$połączenie (ngx_http_core_module) numer seryjny połączenia
$połączenie (ngx_http_log_module) numer seryjny połączenia
$połączenie (ngx_stream_core_module) numer seryjny połączenia
$connection_requests (ngx_http_core_module) Bieżąca liczba żądań przesłanych poprzez połączenie.
$connection_requests (ngx_http_log_module) Bieżąca liczba żądań przesłanych poprzez połączenie.
$połączenia_aktywne Taki sam jak Aktywne połączenia wartość
$połączenia_czytanie Taki sam jak Czytanie wartość
$połączenia_oczekiwania Tak samo jak Czekanie wartość
$connections_writing Taka sama jak wartość zapisu.
$długość_treści Pole nagłówka żądania „Długość treści”.
$typ_treści Pole nagłówka żądania „Typ zawartości”.
$nazwa_pliku cookie Nazwa pliku cookie
$data_gmt Aktualny czas w formacie GMT (czas uniwersalny Greenwich). Aby ustawić format, użyj opcji konfiguracja polecenie z czas parametr.
$data_lokalna Aktualny czas w lokalnej strefie czasowej. Aby ustawić format, użyj opcji konfiguracja polecenie z czas parametr.
$katalog_dokumentu Wartość dyrektywy root lub alias dla bieżącego żądania.
$dokumenty Jest taki sam jak $uri.
$fastcgi_path_info Podczas korzystania z dyrektywy fastcgi_split_path_info zmienna $fastcgi_script_name jest równa wartości pierwszego przechwytywania ustawionego przez dyrektywę. Oraz wartość drugiego przechwytywania ustawiona przez dyrektywę fastcgi_split_path_info. Zmienna ta służy do ustawiania parametru PATH_INFO.
$fastcgi_nazwa_skryptu Zażądaj URI (Uniform Resource Identifier) ​​lub, jeśli URI kończy się ukośnikiem, zażądaj URI z nazwą pliku indeksu skonfigurowaną przez dołączoną do niego dyrektywę fastcgi_index.
$geoip_area_code (ngx_http_geoip_module) Numer kierunkowy telefonu (tylko USA). Ta zmienna może zawierać pewne informacje, które są nieaktualne, ponieważ odpowiednie pole bazy danych jest przestarzałe.
$geoip_area_code (ngx_stream_geoip_module) Numer kierunkowy telefonu (tylko USA). Ta zmienna może zawierać nieaktualne informacje, ponieważ odpowiednie pole bazy danych jest przestarzałe.
$geoip_city (ngx_http_geoip_module) Nazwa miasta, np. „Waszynton”, „Moskwa”.
$geoip_city (ngx_stream_geoip_module) Nazwa miasta, np. „Waszynton”, „Moskwa”.
$geoip_city_continent_code (ngx_http_geoip_module) Kod kontynentu składający się z dwóch liter. Na przykład „NA”, „UE”.
$geoip_city_continent_code (ngx_stream_geoip_module) Kod kontynentu składający się z dwóch liter. Na przykład „NA”, „UE”.
$geoip_city_country_code (ngx_http_geoip_module) Kod kontynentu składający się z dwóch liter. Na przykład „NA”, „UE”.
$geoip_city_country_code (ngx_http_geoip_module) Kod kraju w dwóch literach. Na przykład „RU”, „US”.
$geoip_city_country_code (ngx_stream_geoip_module) Kod kraju w dwóch literach. Na przykład „RU”, „US”.
$geoip_city_country_code3 (ngx_http_geoip_module) Kod kraju składający się z trzech liter. Na przykład „RUS”, „USA”.
$geoip_city_country_code3 (ngx_stream_geoip_module) Kod kraju składający się z trzech liter. Na przykład „RUS”, „USA”.
$geoip_city_country_name (ngx_http_geoip_module) Nazwa kraju. Na przykład „Indie”, „Stany Zjednoczone”.
$geoip_city_country_name (ngx_stream_geoip_module) Nazwa kraju. Na przykład „Indie”, „Stany Zjednoczone”.
$geoip_country_code (ngx_http_geoip_module) Kod kraju w dwóch literach. Na przykład „RU”, „US”.
$geoip_country_code (ngx_stream_geoip_module) Kod kraju w dwóch literach. Na przykład „RU”, „US”.
$geoip_country_code3 (ngx_http_geoip_module) Kod kraju składający się z trzech liter. Na przykład „RUS”, „USA”.
$geoip_country_code3 (ngx_stream_geoip_module) Kod kraju składający się z trzech liter. Na przykład „RUS”, „USA”.
$geoip_country_name (ngx_http_geoip_module) Nazwa kraju. Na przykład „Indie”, „Stany Zjednoczone”.
$geoip_country_name (ngx_stream_geoip_module) Nazwa kraju. Na przykład „Indie”, „Stany Zjednoczone”.
$geoip_dma_code (ngx_http_geoip_module) Jest to kod DMA (Designated Market Area) lub kod metra w USA, zgodnie z kierowaniem geograficznym w interfejsie API Google AdWords.
$geoip_dma_code (ngx_stream_geoip_module) Jest to kod DMA (Designated Market Area) lub kod metra w USA, zgodnie z kierowaniem geograficznym w interfejsie API Google AdWords.
$geoip_latitude (ngx_http_geoip_module) Szerokość.
$geoip_latitude (ngx_stream_geoip_module) Szerokość.
$geoip_longitude (ngx_http_geoip_module) Długość geograficzna
$geoip_longitude (ngx_stream_geoip_module) Długość geograficzna
$geoip_org (ngx_http_geoip_module) Nazwa organizacji. Na przykład „Uniwersytet Kalifornijski”.
$geoip_org (ngx_stream_geoip_module) Nazwa organizacji. Na przykład „Uniwersytet Kalifornijski”.
$geoip_postal_code (ngx_http_geoip_module) Kod pocztowy.
$geoip_postal_code (ngx_stream_geoip_module) Kod pocztowy.
$geoip_region (ngx_http_geoip_module) Nazwa regionu (prowincja, region, stan, teren federalny, terytorium), na przykład dla miasta Moskwa, DC.
$geoip_region (ngx_stream_geoip_module) Nazwa regionu (prowincja, region, stan, teren federalny, terytorium), na przykład dla miasta Moskwa, DC.
$geoip_region_name (ngx_http_geoip_module) Nazwa regionu kraju ((prowincja, region, stan, kraj federalny, terytorium), na przykład „Miasto Moskwa”, „Dystrykt Kolumbii”.
$geoip_region_name (ngx_stream_geoip_module) Nazwa regionu kraju ((prowincja, region, stan, kraj federalny, terytorium), na przykład „Miasto Moskwa”, „Dystrykt Kolumbii”.
$gzip_ratio Jest to osiągnięty stopień kompresji, obliczony jako stosunek pomiędzy rozmiarami odpowiedzi oryginalnej i skompresowanej.
$gospodarz Nazwa hosta z wiersza żądania, nazwa hosta z pola nagłówka żądania hosta lub nazwa serwera pasująca do żądania.
$nazwa hosta (ngx_http_core_module) Nazwa hosta.
$nazwa hosta (ngx_stream_core_module) Nazwa hosta.
$http2 Negocjowany identyfikator protokołu: h2 dla HTTP/2 przez TLS, h2c dla HTTP/2 przez TCP w postaci zwykłego tekstu lub w przeciwnym razie pusty ciąg znaków.
$nazwa_http Jest to dowolne pole nagłówka żądania: ostatnia część nazwy zmiennej to nazwa pola, która jest konwertowana na małe litery z myślnikami zastąpionymi podkreśleniami.
$https Jeśli połączenie działa w trybie SSL, to jest ono włączone lub w innym przypadku jest pustym ciągiem znaków.
$nieprawidłowy_referer Jeśli wartość pola nagłówka żądania „Referer” zostanie uznana za prawidłową, wówczas ciąg znaków będzie pusty, w przeciwnym razie 1.
$is_args „?” jeśli linia żądania zawiera argumenty, lub w przeciwnym razie pusty ciąg.
$jwt_claim_name Zwraca wartość określonego żądania JWT (JSON Web Token).
$jwt_nazwa_nagłówka Zwraca wartość określonego nagłówka JOSE (podpisywanie i szyfrowanie obiektów JavaScript).
$limit_rate Ustawienie tej zmiennej umożliwia ograniczenie szybkości reakcji.
$memcached_key Definiuje klucz do uzyskania odpowiedzi z serwera memcached.
$modern_przeglądarka Równa się wartości ustawionej przez dyrektywę modern_browser_value, jeśli przeglądarka została zidentyfikowana jako nowoczesna.
$ms (ngx_http_core_module) Aktualny czas w sekundach z rozdzielczością ms (milisekund).
$msec (ngx_http_log_module) Czas w sekundach z rozdzielczością milisekundową w momencie zapisu dziennika.
$ms (ngx_stream_core_module) Aktualny czas w sekundach z rozdzielczością ms (milisekund).
Pan Równa się 1, jeśli przeglądarka została zidentyfikowana jako MSIE (Microsoft Internet Explorer) w dowolnej wersji.
$nginx_version (ngx_http_core_module) Pokazuje wersję nginx
$nginx_version (ngx_stream_core_module) Wersja Nginxa.
$pid (ngx_http_core_module) PID (identyfikator procesu) procesu roboczego.
$pid (ngx_stream_core_module) PID (identyfikator procesu) procesu roboczego.
$potok (ngx_http_core_module) „p”, jeśli żądanie zostało przesłane w trybie potokowym, „.” W przeciwnym razie.
$potok (ngx_http_log_module) „p”, jeśli żądanie zostało przesłane w trybie potokowym, „.” W przeciwnym razie.
$protokół Protokół używany do komunikacji z klientem: UDP lub TCP.
$proxy_add_x_forwarded_for pole nagłówka żądania klienta „X-Forwarded-For” z dołączoną do niego zmienną $remote_addr, oddzielone przecinkiem. Jeśli w nagłówku żądania klienta nie ma pola „X-Forwarded-For”, zmienna $proxy_add_x_forwarded_for jest równa zmiennej $remote_addr.
$proxy_host Nazwa i port serwera proxy zgodnie z dyrektywą proxy_pass.
$port_proxy Port serwera proxy określony w dyrektywie proxy_pass lub domyślny port protokołu.
$proxy_protocol_addr (ngx_http_core_module) Adres klienta z nagłówka protokołu PROXY lub w innym przypadku pusty ciąg znaków. Protokół PROXY musi być wcześniej włączony. Można tego dokonać ustawiając parametr protokołu proxy w dyrektywie Listen.
$proxy_protocol_addr (ngx_stream_core_module) Adres klienta z nagłówka protokołu PROXY lub w innym przypadku pusty ciąg znaków. Protokół PROXY musi być wcześniej włączony. Można tego dokonać ustawiając parametr protokołu proxy w dyrektywie Listen.
$proxy_protocol_port (ngx_http_core_module) Adres klienta z nagłówka protokołu PROXY lub w innym przypadku pusty ciąg znaków. Protokół PROXY musi być wcześniej włączony. Można tego dokonać ustawiając parametr protokołu proxy w dyrektywie Listen.
$proxy_protocol_port (ngx_stream_core_module) Adres klienta z nagłówka protokołu PROXY lub w innym przypadku pusty ciąg znaków. Protokół PROXY musi być wcześniej włączony. Można tego dokonać ustawiając parametr protokołu proxy w dyrektywie Listen.
$zapytanie_ciąg To samo co $args
$realip_remote_addr (ngx_http_realip_module) Służy do zachowania pierwotnego adresu klienta.
$realip_remote_addr (ngx_stream_realip_module) Służy do zachowania pierwotnego adresu klienta.
$realip_remote_port (ngx_http_realip_module) Służy do zachowania pierwotnego adresu klienta.
$realip_remote_port (ngx_stream_realip_module) Służy do zachowania pierwotnego adresu klienta.
$realpath_root Bezwzględna nazwa ścieżki odpowiadająca wartości aliasu lub dyrektywy root dla bieżącego żądania, ze wszystkimi dowiązaniami symbolicznymi przekształconymi w ścieżki rzeczywiste.
$remote_addr (ngx_http_core_module) Adres Klienta
$remote_addr (ngx_stream_core_module) Adres Klienta
$remote_port (ngx_http_core_module) Port Klienta
$remote_port (ngx_stream_core_module) Port klienta
$zdalny_użytkownik Nazwa użytkownika dostarczona z uwierzytelnianiem podstawowym.
$prośba Pełna oryginalna linia żądania.
$treść żądania Wartość zmiennej jest udostępniana w lokalizacjach przetwarzanych przez dyrektywy proxy_pass i scgi_pass, gdy treść żądania została odczytana do bufora pamięci.
$request_body_file Nazwa pliku tymczasowego zawierającego treść żądania.
$zakończenie_żądania Wartość to „OK”, jeśli żądanie zostało zakończone, lub pusty ciąg znaków w przeciwnym razie.
$nazwa_pliku_żądania Ścieżka pliku bieżącego żądania na podstawie dyrektyw głównych lub aliasów oraz identyfikatora URI żądania.
$id_żądania Unikalny identyfikator żądania wygenerowany z 16 losowych bajtów, w formacie szesnastkowym.
$request_length (ngx_http_core_module) Długość żądania (wiersz żądania, treść żądania i nagłówek).
$request_length (ngx_http_log_module) Długość żądania (wiersz żądania, treść żądania i nagłówek).
$metoda_żądania Metoda żądania. Zwykle „GET” lub „POST”.
$request_time (ngx_http_core_module) Żądaj czasu przetwarzania w sekundach z rozdzielczością milisekundową; czas, jaki upłynął od odczytania pierwszych bajtów od klienta.
$request_time (ngx_http_log_module) Żądaj czasu przetwarzania w sekundach z rozdzielczością milisekundową; czas, jaki upłynął pomiędzy odczytaniem pierwszych bajtów od klienta a zapisem dziennika po wysłaniu ostatnich bajtów do klienta.
$żądanie_uri Pełny oryginalny identyfikator URI żądania (Uniform Resource Identifier) ​​z argumentami.
$schemat Schemat żądania, który może być http lub https
$bezpieczny_link Pokazuje stan sprawdzenia połączenia, a wartość zależy od wybranego trybu pracy.
$bezpieczny_link_wygasa Czas życia łącza przekazanego w żądaniu;
$wysłana_nazwa_httpu Jest to pole nagłówka dowolnej odpowiedzi; ostatnia część nazwy zmiennej to nazwa pola zamieniona na małe litery z myślnikami zastąpionymi podkreśleniami.
$wysłana_nazwa_naczepy Dowolne pole wysyłane na końcu odpowiedzi; ostatnia część nazwy zmiennej to nazwa pola zamieniona na małe litery z myślnikami zastąpionymi podkreśleniami.
$adres_serwera (ngx_http_core_module) Adres serwera, który przyjął żądanie. Obliczenie wartości tej zmiennej wymaga wywołania systemowego.
$adres_serwera (ngx_stream_core_module) Adres serwera, który przyjął żądanie. Obliczenie wartości tej zmiennej wymaga wywołania systemowego.
$nazwa_serwera Nazwa serwera, który przyjął żądanie.
$port_serwera (ngx_http_core_module) Port serwera, który przyjął żądanie.
$server_port (ngx_stream_core_module) Port serwera, który przyjął połączenie.
$protokół_serwera Jest to protokół żądań, zwykle HTTP/1.0, HTTP/1.1 lub HTTP/2.0.
$session_log_binary_id Identyfikator bieżącej sesji w postaci binarnej.
$session_log_id Bieżący identyfikator sesji.
$sesja_czas Czas trwania sesji w sekundach z rozdzielczością milisekundową.
$zakres_kawałka Bieżący zakres wycinków w formacie zakresu bajtów HTTP. Np. bajty=0-1048575
$szpieg Wersja protokołu SPDY dla połączeń SPDY (wymawiane jako szybkie) lub w przeciwnym razie pusty ciąg znaków.
$spdy_request_priority Żądaj priorytetu dla połączeń SPDY (wymawiane jako szybkie) lub w przeciwnym razie pusty ciąg znaków.
$ssl_cipher (ngx_http_ssl_module) Zwraca ciąg szyfrów użyty do ustanowionego połączenia SSL (Secure Sockets Layer).
$ssl_cipher (ngx_stream_ssl_module) Zwraca ciąg szyfrów użyty do ustanowionego połączenia SSL (Secure Sockets Layer).
$ssl_ciphers (ngx_http_ssl_module) Zwróci listę szyfrów obsługiwanych przez klienta. Tutaj znane szyfry są wymienione według nazw, a nieznane są wyświetlane w formacie szesnastkowym, na przykład AES128-SHA:AES256-SHA:0x00ff
$ssl_ciphers (ngx_stream_ssl_module) Zwróci listę szyfrów obsługiwanych przez klienta. Tutaj znane szyfry są wymienione według nazw, a nieznane są wyświetlane w formacie szesnastkowym, na przykład AES128-SHA:AES256-SHA:0x00ff
$ssl_client_cert (ngx_http_ssl_module) Zwróci certyfikat klienta w PEM (Privacy Enhanced Mail) dla nawiązanego połączenia SSL, z każdą linią z wyjątkiem 1ulpoprzedzony znakiem tabulacji.
$ssl_client_cert (ngx_stream_ssl_module) Zwróci certyfikat klienta w PEM (Privacy Enhanced Mail) dla nawiązanego połączenia SSL, z każdą linią z wyjątkiem 1ulpoprzedzony znakiem tabulacji.
$ssl_client_escaped_cert Zwróci certyfikat klienta w PEM (Privacy Enhanced Mail) dla nawiązanego połączenia SSL
$ssl_client_fingerprint (ngx_http_ssl_module) Zwróci odcisk palca SHA1 (Secure Hash Algorithm) certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_fingerprint (ngx_stream_ssl_module) Zwróci odcisk palca SHA1 (Secure Hash Algorithm) certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_i_dn (ngx_http_ssl_module) Zwraca ciąg znaków „Nazwa wyróżniająca wystawcy” (gdzie nazwa wyróżniająca to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL zgodnie z RFC 2253.
$ssl_client_i_dn (ngx_stream_ssl_module) Zwraca ciąg znaków „Nazwa wyróżniająca wystawcy” (gdzie nazwa wyróżniająca to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL zgodnie z RFC 2253.
$ssl_client_i_dn_legacy Zwraca ciąg znaków „Nazwa wyróżniająca wystawcy” (gdzie nazwa wyróżniająca to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_raw_cert (ngx_http_ssl_module) Zwróci certyfikat klienta w formacie PEM (Privacy Enhanced Mail) dla nawiązanego połączenia SSL.
$ssl_client_raw_cert (ngx_stream_ssl_module) Zwróci certyfikat klienta w formacie PEM (Privacy Enhanced Mail) dla nawiązanego połączenia SSL.
$ssl_client_s_dn (ngx_http_ssl_module) Zwraca ciąg znaków „DN podmiotu” (gdzie DN to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL zgodnie z RFC2253.
$ssl_client_s_dn (ngx_stream_ssl_module) Zwraca ciąg znaków „DN podmiotu” (gdzie DN to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL zgodnie z RFC2253.
$ssl_client_s_dn_legacy Zwraca ciąg znaków „DN podmiotu” (gdzie DN to nazwa wyróżniająca) certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_serial (ngx_http_ssl_module) Zwróci numer seryjny certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_serial (ngx_stream_ssl_module) Zwróci numer seryjny certyfikatu klienta dla nawiązanego połączenia SSL.
$ssl_client_v_end (ngx_http_ssl_module) Zwróci datę końcową certyfikatu klienta.
$ssl_client_v_end (ngx_stream_ssl_module) Zwróci datę końcową certyfikatu klienta.
$ssl_client_v_remain (ngx_http_ssl_module) Zwróci liczbę dni do wygaśnięcia certyfikatu klienta.
$ssl_client_v_remain (ngx_stream_ssl_module) Zwróci liczbę dni do wygaśnięcia certyfikatu klienta.
$ssl_client_v_start (ngx_http_ssl_module) Zwróci datę początkową certyfikatu klienta.
$ssl_client_v_start (ngx_stream_ssl_module) Zwróci datę początkową certyfikatu klienta.
$ssl_client_verify (ngx_http_ssl_module) Zwróci wynik weryfikacji certyfikatu klienta: „SUCCESS”, „FAILD:powód” i „NONE”, jeśli certyfikat nie był obecny.
$ssl_client_verify (ngx_stream_ssl_module) Zwróci wynik weryfikacji certyfikatu klienta: „SUCCESS”, „FAILD:powód” i „NONE”, jeśli certyfikat nie był obecny.
$ssl_curves (ngx_http_ssl_module) Zwraca listę krzywych obsługiwanych przez klienta. Wszystkie znane krzywe są wymienione według nazw, a nieznane są wyświetlane w formacie szesnastkowym, na przykład: 0x001d:prime256v1:secp521r1:secp384r1
$ssl_curves (ngx_stream_ssl_module) Zwraca listę krzywych obsługiwanych przez klienta. Wszystkie znane krzywe są wymienione według nazw, a nieznane są wyświetlane w formacie szesnastkowym, na przykład: 0x001d:prime256v1:secp521r1:secp384r1
$ssl_early_data Zwróci 1, jeśli zostaną użyte wczesne dane TLS 1.3 i uzgadnianie nie zostanie zakończone, w przeciwnym razie zwróci wartość pustą.
Protokoły $ssl_preread_alpn_protocols Zwraca listę protokołów rozgłaszanych przez klienta poprzez ALPN, a wartości oddzielane są przecinkami.
Protokół $ssl_preread_protocol Najwyższa wersja protokołu SSL (Secure Sockets Layer) obsługiwana przez klienta.
$ssl_preread_server_name Zwraca nazwę serwera żądaną przez SNI (wskaźnik nazwy serwera).
$ssl_protocol (ngx_http_ssl_module) Zwróci protokół nawiązanego połączenia SSL.
$ssl_protocol (ngx_stream_ssl_module) Zwróci protokół nawiązanego połączenia SSL.
$ssl_server_name (ngx_http_ssl_module) Zwraca nazwę serwera żądaną przez SNI (wskaźnik nazwy serwera).
$ssl_server_name (ngx_stream_ssl_module) Zwraca nazwę serwera żądaną przez SNI (wskaźnik nazwy serwera).
$ssl_session_id (ngx_http_ssl_module) Zwróci identyfikator sesji nawiązanego połączenia SSL.
$ssl_session_id (ngx_stream_ssl_module) Zwróci identyfikator sesji nawiązanego połączenia SSL.
$ssl_session_reused (ngx_http_ssl_module) Zwraca „r”, jeśli sesja SSL została ponownie wykorzystana lub „.” W przeciwnym razie.
$ssl_session_reused (ngx_stream_ssl_module) Zwraca „r”, jeśli sesja SSL została ponownie wykorzystana lub „.” W przeciwnym razie.
$status (ngx_http_core_module) Stan odpowiedzi.
$status (ngx_http_log_module) Stan odpowiedzi.
$status (ngx_stream_core_module) Stan sesji, który może być jednym z następujących: 200: Sesja zakończyła się pomyślnie. 400: Nie można przeanalizować danych klienta. 403: zakaz dostępu. 500 wewnętrzny błąd serwera. 502: zła brama. 503 Usługa niedostępna.
$tcpinfo_rtt Wyświetla informacje o połączeniu TCP klienta, dostępne w systemach obsługujących protokół TCP_INFO opcja gniazda.
$tcpinfo_rttvar Wyświetla informacje o połączeniu TCP klienta, dostępne w systemach obsługujących protokół TCP_INFO opcja gniazda.
$tcpinfo_snd_cwnd Wyświetla informacje o połączeniu TCP klienta, dostępne w systemach obsługujących protokół TCP_INFO opcja gniazda.
$tcpinfo_rcv_space Wyświetla informacje o połączeniu TCP klienta, dostępne w systemach obsługujących protokół TCP_INFO opcja gniazda.
$time_iso8601 (ngx_http_core_module) Pokazuje czas lokalny w standardowym formacie ISO 8601.
$time_iso8601 (ngx_http_log_module) Pokazuje czas lokalny w standardowym formacie ISO 8601.
$time_iso8601 (ngx_stream_core_module) Pokazuje czas lokalny w standardowym formacie ISO 8601.
$time_local (ngx_http_core_module) Pokazuje czas lokalny w formacie wspólnego dziennika
$time_local (ngx_http_log_module) Pokazuje czas lokalny w formacie wspólnego dziennika.
$time_local (ngx_stream_core_module) Pokazuje czas lokalny w formacie wspólnego dziennika.
$uid_got Nazwa pliku cookie i otrzymany identyfikator klienta.
$uid_reset Jeśli zmienna jest ustawiona na „niepusty” ciąg znaków, co oznacza, że ​​nie jest to „0”, wówczas identyfikator klienta jest resetowany. Wartość specjalna dziennik dodatkowo prowadzi do wyprowadzenia komunikatów o identyfikatorach resetowania do dziennika błędów.
$uid_set Nazwa pliku cookie i przesłany identyfikator klienta.
$upstream_addr (ngx_http_upstream_module) Zachowa adres IP i port lub ścieżkę do gniazda domeny UNIX serwera nadrzędnego. Jeśli podczas przetwarzania żądania skontaktowano się z kilkoma serwerami, ich adresy oddziela się przecinkami.
$upstream_addr (ngx_stream_upstream_module) Zachowa adres IP i port lub ścieżkę do gniazda domeny UNIX serwera nadrzędnego. Jeśli podczas przetwarzania żądania skontaktowano się z kilkoma serwerami, ich adresy oddziela się przecinkami.
$upstream_bytes_received (ngx_http_upstream_module) Liczba bajtów odebranych z nadrzędnego serwera strumieniowego. Wartości z kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
Odebrane $upstream_bytes_module (ngx_stream_upstream_module) Liczba bajtów odebranych z nadrzędnego serwera strumieniowego. Wartości z kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w pliku $adres_upstream zmienny.
$upstream_bytes_sent (ngx_http_upstream_module) Liczba bajtów wysłanych do nadrzędnego serwera strumieniowego. Wartości z kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w pliku $adres_upstream zmienny.
$upstream_bytes_sent (ngx_stream_upstream_module) Liczba bajtów wysłanych do nadrzędnego serwera strumieniowego. Wartości z kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w pliku $adres_upstream zmienny.
$upstream_cache_status Zachowa status dostępu do pamięci podręcznej odpowiedzi. Status może mieć wartość „OBEJŚCIE”, „Brak”, „WAŻNOŚĆ”, „STARE”, „PONOWNIE ZALIDOWANY”, „AKTUALIZACJA” lub „TRAFIŁ”.
$upstream_connect_time (ngx_http_upstream_module) Służy do rejestrowania czasu poświęconego na nawiązanie połączenia z serwerem nadrzędnym (1.9.1); czas jest podawany w sekundach z rozdzielczością milisekundową. W przypadku protokołu SSL dodaje czas poświęcony na uzgadnianie. Czasy kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
$upstream_connect_time (ngx_stream_upstream_module) Utrzymuje czas połączenia z serwerem nadrzędnym; czas jest podawany w sekundach z rozdzielczością milisekundową. Czasy kilku połączeń oddzielane są przecinkami (,), podobnie jak adresy w zmiennej $upstream_addr.
$nazwa_pliku cookie_upstream Plik cookie o określonej nazwie wysyłany przez serwer nadrzędny w polu nagłówka odpowiedzi Set-Cookie. Zapisywane są tylko pliki cookie z odpowiedzi ostatniego serwera.
$upstream_first_byte_time Czas na odebranie pierwszego bajtu danych. Czas jest podawany w sekundach z rozdzielczością milisekundową. Czasy wielu połączeń oddzielane są przecinkami (,), podobnie jak adresy w zmiennej $upstream_addr.
$upstream_header_time Służy do przechowywania czasu spędzonego na odbiorze nagłówka z serwera nadrzędnego. Czasy wielokrotnych połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
$upstream_nazwa_http Zachowaj pola nagłówka odpowiedzi serwera.
$upstream_queue_time Służy do rejestrowania czasu przebywania żądania w kolejce nadrzędnej; czas jest podawany w sekundach z rozdzielczością milisekundową. Czasy wielokrotnych połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
$upstream_response_length Służy do przechowywania długości odpowiedzi uzyskanej z serwera nadrzędnego. Długość jest zapisywana w bajtach. Długości wielokrotnych odpowiedzi oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
$upstream_response_time Służy do rejestrowania czasu spędzonego na otrzymaniu odpowiedzi z serwera nadrzędnego; czas jest podawany w sekundach z rozdzielczością milisekundową. Czasy kilku połączeń oddzielane są przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr.
$upstream_session_time Czas trwania sesji w sekundach z rozdzielczością milisekundową. Czasy kilku połączeń oddzielane są przecinkami (,), podobnie jak adresy w zmiennej $upstream_addr.
$upstream_status Służy do przechowywania kodu stanu odpowiedzi uzyskanej z serwera nadrzędnego. Kody stanu kilku odpowiedzi są oddzielone przecinkami (,) i dwukropkami (:) podobnie jak adresy w zmiennej $upstream_addr. Jeśli nie można wybrać serwera, zmienna zachowuje kod stanu 502 (Bad Gateway).
$nazwa_naczepy_upstream Służy do przechowywania pola z końca odpowiedzi otrzymanej z serwera nadrzędnego.
typ Bieżący identyfikator URI w żądaniu, znormalizowany. Możemy zmienić wartość $uri podczas przetwarzania żądania, np. podczas wykonywania wewnętrznych przekierowań lub podczas korzystania z plików indeksu.