変数はプログラミング言語の自然な部分です。これらは、Perl、C/C++、Bourne シェル、Perl などの命令型言語のさまざまな値を保持する単なるコンテナです。また、値には、「hello world」のような文字列、「3.14」のような数値、またはこれらの言語の配列やハッシュ テーブルへの参照などの複雑なものも含まれます。
ただし、Nginx 構成言語の場合、変数は 1 種類の値、つまり文字列のみを保持できます。しかし、興味深い例外があります: 3rdparty モジュール ngx_array_var は配列を含むように Nginx 変数を拡張しますが、これはバックグラウンドで C ポインタをバイナリ文字列値としてエンコードすることによって実装されます。
変数の構文
次の行を含む nginx.conf 構成ファイルを考えてみましょう。
set $a 'hello world';
ここでは、標準の nginx_rewrite モジュールからの set 構成ディレクティブを通じて、変数 '$a' に値を割り当てます。ここでは、文字列値 'hello world' を '$a' に割り当てます。
上の例から、Nginx 変数名の前にドル記号 ($) が付いていることがわかります。したがって、構成ファイルに nginx 変数への参照を追加する場合は常に、ドル ($) プレフィックスを追加する必要があると言えます。
別の簡単な例を見てみましょう。
set $a hello; set $b '$a, $a';
上記の例から、変数 $a が変数 $b の値を構築するために使用されていることがわかります。したがって、これら 2 つのディレクティブの実行が完了すると、$a の値は「hello」、$b の値は「hello, hello」になります。この手法は「変数補間」と呼ばれます。
Nginx の変数のリストを見てみましょう。
変数 | 説明 |
---|---|
$ancient_browser | この変数は、ブラウザが古いものとして識別された場合に、iancient_browser_value ディレクティブによって設定された値と等しくするために使用されます。 |
$arg_name | リクエスト行の引数の名前。 |
$args | リクエストラインの引数のリスト。 |
$binary_remote_addr (ngx_http_core_module) | バイナリ形式のクライアント アドレス。値の長さは常に、IP4 アドレスの場合は 4 バイト、IPv6 アドレスの場合は 16 バイトです。 |
$binary_remote_addr (ngx_stream_core_module) | バイナリ形式のクライアント アドレス。値の長さは常に、IP4 アドレスの場合は 4 バイト、IPv6 アドレスの場合は 16 バイトです。 |
$body_bytes_sent | クライアントに送信されたバイト数。応答ヘッダーはカウントされません。 |
$bytes_received | クライアントから受信したバイト数。 |
$bytes_sent (ngx_http_core_module) | クライアントに送信されたバイト数。 |
$bytes_sent (ngx_http_log_module) | クライアントに送信されたバイト数。 |
$bytes_sent (ngx_stream_core_module) | クライアントに送信されたバイト数。 |
$connection (ngx_http_core_module) | 接続シリアル番号 |
$connection (ngx_http_log_module) | 接続シリアル番号 |
$connection (ngx_stream_core_module) | 接続シリアル番号 |
$connection_requests (ngx_http_core_module) | 接続経由で行われた現在のリクエストの数。 |
$connection_requests (ngx_http_log_module) | 接続経由で行われた現在のリクエストの数。 |
$connections_active | と同じ アクティブな接続 価値 |
$connections_reading | と同じ 読む 価値 |
$connections_waiting | と同じ 待っている 価値 |
$connections_writing | 書き込み値と同じです。 |
$content_length | 「コンテンツ長」リクエストヘッダーフィールド。 |
$content_type | 「コンテンツタイプ」リクエストヘッダーフィールド |
$cookie_name | クッキーの名前 |
$date_gmt | GMT (グリニッジ標準時) での現在時刻。形式を設定するには、 構成 とのコマンド タイムfmt パラメータ。 |
$date_local | ローカルタイムゾーンでの現在時刻。形式を設定するには、 構成 とのコマンド タイムfmt パラメータ。 |
$document_root | 現在のリクエストのルートまたはエイリアス ディレクティブの値。 |
$documents | $uriと同じです。 |
$fastcgi_path_info | fastcgi_split_path_info ディレクティブを使用する場合、$fastcgi_script_name 変数は、ディレクティブによって設定された最初のキャプチャの値と等しくなります。そして、fastcgi_split_path_info ディレクティブによって設定された 2 番目のキャプチャの値。この変数は、PATH_INFO パラメータを設定するために使用されます。 |
$fastcgi_script_name | URI (Uniform Resource Identifier) を要求するか、URI がスラッシュで終わる場合は、fastcgi_index ディレクティブによって構成されたインデックス ファイル名が付加された URI を要求します。 |
$geoip_area_code (ngx_http_geoip_module) | 電話の市外局番 (米国のみ)。この変数には、対応するデータベース フィールドが非推奨になっているため、古い情報が含まれている可能性があります。 |
$geoip_area_code (ngx_stream_geoip_module) | 電話の市外局番 (米国のみ)。対応するデータベース フィールドが非推奨になっているため、この変数には古い情報が含まれている可能性があります。 |
$geoip_city (ngx_http_geoip_module) | 都市名、例: 「ワシントン」、「モスクワ」。 |
$geoip_city (ngx_stream_geoip_module) | 都市名、例: 「ワシントン」、「モスクワ」。 |
$geoip_city_continent_code (ngx_http_geoip_module) | 2 文字の大陸コード。たとえば、「NA」、「EU」などです。 |
$geoip_city_continent_code (ngx_stream_geoip_module) | 2 文字の大陸コード。たとえば、「NA」、「EU」などです。 |
$geoip_city_country_code (ngx_http_geoip_module) | 2 文字の大陸コード。たとえば、「NA」、「EU」などです。 |
$geoip_city_country_code (ngx_http_geoip_module) | 2 文字の国コード。たとえば、「RU」、「US」などです。 |
$geoip_city_country_code (ngx_stream_geoip_module) | 2 文字の国コード。たとえば、「RU」、「US」などです。 |
$geoip_city_country_code3 (ngx_http_geoip_module) | 3 文字の国コード。たとえば、「RUS」、「USA」などです。 |
$geoip_city_country_code3 (ngx_stream_geoip_module) | 3 文字の国コード。たとえば、「RUS」、「USA」などです。 |
$geoip_city_country_name (ngx_http_geoip_module) | 国の名前。たとえば、「インド」、「米国」などです。 |
$geoip_city_country_name (ngx_stream_geoip_module) | 国の名前。たとえば、「インド」、「米国」などです。 |
$geoip_country_code (ngx_http_geoip_module) | 2 文字の国コード。たとえば、「RU」、「US」などです。 |
$geoip_country_code (ngx_stream_geoip_module) | 2 文字の国コード。たとえば、「RU」、「US」などです。 |
$geoip_country_code3 (ngx_http_geoip_module) | 3 文字の国コード。たとえば、「RUS」、「USA」などです。 |
$geoip_country_code3 (ngx_stream_geoip_module) | 3 文字の国コード。たとえば、「RUS」、「USA」などです。 |
$geoip_country_name (ngx_http_geoip_module) | 国の名前。たとえば、「インド」、「米国」などです。 |
$geoip_country_name (ngx_stream_geoip_module) | 国の名前。たとえば、「インド」、「米国」などです。 |
$geoip_dma_code (ngx_http_geoip_module) | これは、Google AdWords API の地域ターゲティングに基づく、米国の DMA (Designated Market Area) コードまたはメトロ コードです。 |
$geoip_dma_code (ngx_stream_geoip_module) | これは、Google AdWords API の地域ターゲティングに基づく、米国の DMA (Designated Market Area) コードまたはメトロ コードです。 |
$geoip_latitude (ngx_http_geoip_module) | 緯度。 |
$geoip_latitude (ngx_stream_geoip_module) | 緯度。 |
$geoip_longitude (ngx_http_geoip_module) | 経度 |
$geoip_longitude (ngx_stream_geoip_module) | 経度 |
$geoip_org (ngx_http_geoip_module) | 組織の名前。たとえば「カリフォルニア大学」。 |
$geoip_org (ngx_stream_geoip_module) | 組織の名前。たとえば「カリフォルニア大学」。 |
$geoip_postal_code (ngx_http_geoip_module) | 郵便番号。 |
$geoip_postal_code (ngx_stream_geoip_module) | 郵便番号。 |
$geoip_region (ngx_http_geoip_module) | 地域の名前 (州、地域、州、連邦地、準州) (たとえば、ワシントン DC のモスクワ市)。 |
$geoip_region (ngx_stream_geoip_module) | 地域の名前 (州、地域、州、連邦地、準州) (たとえば、ワシントン DC のモスクワ市)。 |
$geoip_region_name (ngx_http_geoip_module) | 国の地域名 ((州、地域、州、連邦地、準州)。たとえば、「モスクワ市」、「コロンビア特別区」。 |
$geoip_region_name (ngx_stream_geoip_module) | 国の地域名 ((州、地域、州、連邦地、準州)。たとえば、「モスクワ市」、「コロンビア特別区」。 |
$gzip_ratio | これは、元の応答サイズと圧縮された応答サイズの比率として計算された、達成された圧縮率です。 |
$host | リクエスト行のホスト名、ホストリクエストヘッダーフィールドからのホスト名、またはリクエストに一致するサーバー名。 |
$hostname (ngx_http_core_module) | ホスト名。 |
$hostname (ngx_stream_core_module) | ホスト名。 |
$http2 | ネゴシエートされたプロトコル識別子: TLS 上の HTTP/2 の場合は h2、クリア テキスト TCP 上の HTTP/2 の場合は h2c、それ以外の場合は空の文字列。 |
$http_name | これは、任意のリクエスト ヘッダー フィールドです。変数名の最後の部分は、ダッシュがアンダースコアに置き換えられて小文字に変換されたフィールド名です。 |
$https | 接続が SSL モードで動作する場合は「on」、それ以外の場合は空の文字列になります。 |
$invalid_referer | 「Referer」リクエスト ヘッダー フィールドの値が有効であるとみなされる場合、文字列は空になり、それ以外の場合は 1 になります。 |
$is_args | 「?」リクエスト行に引数がある場合、または空の文字列がある場合。 |
$jwt_claim_name | 指定された JWT (JSON Web Token) クレームの値を返します。 |
$jwt_header_name | 指定された JOSE (JavaScript Object Signing and Encryption) ヘッダーの値を返します。 |
$limit_rate | この変数を設定すると、応答速度制限が有効になります。 |
$memcached_key | memcached サーバーから応答を取得するためのキーを定義します。 |
$modern_browser | ブラウザがモダンとして識別された場合は、modern_browser_value ディレクティブによって設定された値と等しくなります。 |
$msec (ngx_http_core_module) | ms (ミリ秒) 分解能での秒単位の現在の時刻。 |
$msec (ngx_http_log_module) | ログ書き込み時の秒単位の時間 (ミリ秒単位の分解能)。 |
$msec (ngx_stream_core_module) | ms (ミリ秒) 分解能での秒単位の現在の時刻。 |
氏 | ブラウザがいずれかのバージョンの MSIE (Microsoft Internet Explorer) として識別された場合は 1 に相当します。 |
$nginx_version (ngx_http_core_module) | nginxのバージョンを表示します |
$nginx_version (ngx_stream_core_module) | Nginxのバージョン。 |
$pid (ngx_http_core_module) | ワーカープロセスのPID(プロセスID)。 |
$pid (ngx_stream_core_module) | ワーカープロセスのPID(プロセスID)。 |
$pipe (ngx_http_core_module) | リクエストがパイプライン化された場合は「p」、「.」さもないと。 |
$pipe (ngx_http_log_module) | リクエストがパイプライン化された場合は「p」、「.」さもないと。 |
$プロトコル | クライアントとの通信に使用されるプロトコル: UDP または TCP。 |
$proxy_add_x_forwarded_for | 「X-Forwarded-For」クライアント要求ヘッダー フィールドに $remote_addr 変数が追加され、カンマで区切られます。 「X-Forwarded-For」フィールドがクライアント要求ヘッダーに存在しない場合、$proxy_add_x_forwarded_for 変数は $remote_addr 変数と等しくなります。 |
$proxy_host | proxy_pass ディレクティブで指定されたプロキシ サーバーの名前とポート。 |
$proxy_port | proxy_pass ディレクティブで指定されたプロキシ サーバーのポート、またはプロトコルのデフォルト ポート。 |
$proxy_protocol_addr (ngx_http_core_module) | PROXY プロトコル ヘッダーからのクライアント アドレス、またはそれ以外の場合は空の文字列。事前に PROXY プロトコルを有効にする必要があります。これは、listen ディレクティブでプロキシ プロトコル パラメータを設定することで実行できます。 |
$proxy_protocol_addr (ngx_stream_core_module) | PROXY プロトコル ヘッダーからのクライアント アドレス、またはそれ以外の場合は空の文字列。事前に PROXY プロトコルを有効にする必要があります。これは、listen ディレクティブでプロキシ プロトコル パラメータを設定することで実行できます。 |
$proxy_protocol_port (ngx_http_core_module) | PROXY プロトコル ヘッダーからのクライアント アドレス、またはそれ以外の場合は空の文字列。事前に PROXY プロトコルを有効にする必要があります。これは、listen ディレクティブでプロキシ プロトコル パラメータを設定することで実行できます。 |
$proxy_protocol_port (ngx_stream_core_module) | PROXY プロトコル ヘッダーからのクライアント アドレス、またはそれ以外の場合は空の文字列。事前に PROXY プロトコルを有効にする必要があります。これは、listen ディレクティブでプロキシ プロトコル パラメータを設定することで実行できます。 |
$クエリ文字列 | $args と同じ |
$realip_remote_addr (ngx_http_realip_module) | 元のクライアント アドレスを保持するために使用されます。 |
$realip_remote_addr (ngx_stream_realip_module) | 元のクライアント アドレスを保持するために使用されます。 |
$realip_remote_port (ngx_http_realip_module) | 元のクライアント アドレスを保持するために使用されます。 |
$realip_remote_port (ngx_stream_realip_module) | 元のクライアント アドレスを保持するために使用されます。 |
$realpath_root | 現在のリクエストのエイリアスまたはルート ディレクティブの値に対応する絶対パス名。すべてのシンボリック リンクは実際のパスに解決されます。 |
$remote_addr (ngx_http_core_module) | クライアントアドレス |
$remote_addr (ngx_stream_core_module) | クライアントアドレス |
$remote_port (ngx_http_core_module) | クライアントポート |
$remote_port (ngx_stream_core_module) | クライアントポート |
$remote_user | 基本認証で指定されたユーザー名。 |
$リクエスト | 完全なオリジナルのリクエスト行。 |
$request_body | 変数の値は、リクエスト本文がmemory_bufferに読み取られたときに、proxy_passおよびscgi_passディレクティブによって処理される場所で使用可能になります。 |
$request_body_file | リクエスト本文を含む一時ファイルの名前。 |
$request_completion | リクエストが完了した場合、値は「OK」、それ以外の場合は空の文字列になります。 |
$リクエストファイル名 | ルートまたはエイリアス ディレクティブとリクエスト URI に基づく、現在のリクエストのファイル パス。 |
$request_id | 16 のランダムなバイトから生成される 16 進数の一意のリクエスト ID。 |
$request_length (ngx_http_core_module) | リクエストの長さ (リクエスト行、リクエスト本文、ヘッダー)。 |
$request_length (ngx_http_log_module) | リクエストの長さ (リクエスト行、リクエスト本文、ヘッダー)。 |
$request_method | リクエスト方法。通常は「GET」または「POST」です。 |
$request_time (ngx_http_core_module) | リクエストの処理時間をミリ秒単位で秒単位で表示します。最初のバイトがクライアントから読み取られてからの経過時間。 |
$request_time (ngx_http_log_module) | リクエストの処理時間をミリ秒単位で秒単位で表示します。最初のバイトがクライアントから読み取られてから、最後のバイトがクライアントに送信された後のログの書き込みまでに経過した時間。 |
$request_uri | 引数を含む完全なオリジナルのリクエスト URI (Uniform Resource Identifier)。 |
$スキーム | http または https のリクエスト スキーム |
$secure_link | リンクチェックのステータスを示します。値は選択した動作モードによって異なります。 |
$secure_link_expires | リクエストで渡されるリンクの有効期間。 |
$sent_http_name | これは、任意の応答ヘッダー フィールドです。変数名の最後の部分は、ダッシュがアンダースコアに置き換えられて小文字に変換されたフィールド名です。 |
$sent_trailer_name | 応答の最後に送信される任意のフィールド。変数名の最後の部分は、ダッシュがアンダースコアに置き換えられて小文字に変換されたフィールド名です。 |
$server_addr (ngx_http_core_module) | リクエストを受け付けたサーバーのアドレス。この変数の値を計算するには、システム コールが必要です。 |
$server_addr (ngx_stream_core_module) | リクエストを受け付けたサーバーのアドレス。この変数の値を計算するには、システム コールが必要です。 |
$サーバー名 | リクエストを受け入れたサーバーの名前。 |
$server_port (ngx_http_core_module) | リクエストを受け入れたサーバーのポート。 |
$server_port (ngx_stream_core_module) | 接続を受け入れたサーバーのポート。 |
$サーバープロトコル | これはリクエスト プロトコルで、通常は HTTP/1.0、HTTP/1.1、または HTTP/2.0 です。 |
$session_log_binary_id | バイナリ形式の現在のセッション ID。 |
$session_log_id | 現在のセッションID。 |
$session_time | ミリ秒分解能の秒単位のセッション継続時間。 |
$slice_range | HTTP バイト範囲形式の現在のスライス範囲。例えば。バイト=0-1048575 |
$スパイディ | SPDY (スピーディーと発音) 接続の SPDY プロトコル バージョン、それ以外の場合は空の文字列。 |
$spdy_request_priority | SPDY (スピーディと発音) 接続の優先順位、それ以外の場合は空の文字列を要求します。 |
$ssl_cipher (ngx_http_ssl_module) | 確立された SSL (Secure Sockets Layer) 接続に使用される暗号の文字列を返します。 |
$ssl_cipher (ngx_stream_ssl_module) | 確立された SSL (Secure Sockets Layer) 接続に使用される暗号の文字列を返します。 |
$ssl_ciphers (ngx_http_ssl_module) | クライアントがサポートする暗号のリストを返します。ここでは、既知の暗号は名前でリストされ、未知の暗号は 16 進数で表示されます (例: AES128-SHA:AES256-SHA:0x00ff)。 |
$ssl_ciphers (ngx_stream_ssl_module) | クライアントがサポートする暗号のリストを返します。ここでは、既知の暗号は名前でリストされ、未知の暗号は 16 進数で表示されます (例: AES128-SHA:AES256-SHA:0x00ff)。 |
$ssl_client_cert (ngx_http_ssl_module) | 確立された SSL 接続の PEM (Privacy Enhanced Mail) 内のクライアント証明書が、1 行を除く各行で返されます。セント先頭にタブ文字が付加されます。 |
$ssl_client_cert (ngx_stream_ssl_module) | 確立された SSL 接続の PEM (Privacy Enhanced Mail) 内のクライアント証明書が、1 行を除く各行で返されます。セント先頭にタブ文字が付加されます。 |
$ssl_client_escaped_cert | 確立された SSL 接続のクライアント証明書を PEM (Privacy Enhanced Mail) で返します。 |
$ssl_client_fingerprint (ngx_http_ssl_module) | 確立された SSL 接続のクライアント証明書の SHA1 (セキュア ハッシュ アルゴリズム) フィンガープリントを返します。 |
$ssl_client_fingerprint (ngx_stream_ssl_module) | 確立された SSL 接続のクライアント証明書の SHA1 (セキュア ハッシュ アルゴリズム) フィンガープリントを返します。 |
$ssl_client_i_dn (ngx_http_ssl_module) | RFC 2253 に従って、確立された SSL 接続のクライアント証明書の「発行者 DN」(DN は識別名) 文字列を返します。 |
$ssl_client_i_dn (ngx_stream_ssl_module) | RFC 2253 に従って、確立された SSL 接続のクライアント証明書の「発行者 DN」(DN は識別名) 文字列を返します。 |
$ssl_client_i_dn_legacy | 確立された SSL 接続のクライアント証明書の「発行者 DN」(DN は識別名) 文字列を返します。 |
$ssl_client_raw_cert (ngx_http_ssl_module) | 確立された SSL 接続のクライアント証明書を PEM (Privacy Enhanced Mail) 形式で返します。 |
$ssl_client_raw_cert (ngx_stream_ssl_module) | 確立された SSL 接続のクライアント証明書を PEM (Privacy Enhanced Mail) 形式で返します。 |
$ssl_client_s_dn (ngx_http_ssl_module) | RFC2253 に従って、確立された SSL 接続のクライアント証明書の「サブジェクト DN」(DN は識別名) 文字列を返します。 |
$ssl_client_s_dn (ngx_stream_ssl_module) | RFC2253 に従って、確立された SSL 接続のクライアント証明書の「サブジェクト DN」(DN は識別名) 文字列を返します。 |
$ssl_client_s_dn_legacy | 確立された SSL 接続のクライアント証明書の「サブジェクト DN」(DN は識別名) 文字列を返します。 |
$ssl_client_serial (ngx_http_ssl_module) | 確立された SSL 接続のクライアント証明書のシリアル番号を返します。 |
$ssl_client_serial (ngx_stream_ssl_module) | 確立された SSL 接続のクライアント証明書のシリアル番号を返します。 |
$ssl_client_v_end (ngx_http_ssl_module) | クライアント証明書の終了日を返します。 |
$ssl_client_v_end (ngx_stream_ssl_module) | クライアント証明書の終了日を返します。 |
$ssl_client_v_remain (ngx_http_ssl_module) | クライアント証明書の有効期限が切れるまでの日数を返します。 |
$ssl_client_v_remain (ngx_stream_ssl_module) | クライアント証明書の有効期限が切れるまでの日数を返します。 |
$ssl_client_v_start (ngx_http_ssl_module) | クライアント証明書の開始日を返します。 |
$ssl_client_v_start (ngx_stream_ssl_module) | クライアント証明書の開始日を返します。 |
$ssl_client_verify (ngx_http_ssl_module) | クライアント証明書の検証結果は「SUCCESS」、「FAILD:reason」、証明書が存在しない場合は「NONE」を返します。 |
$ssl_client_verify (ngx_stream_ssl_module) | クライアント証明書の検証結果は「SUCCESS」、「FAILD:reason」、証明書が存在しない場合は「NONE」を返します。 |
$ssl_curves (ngx_http_ssl_module) | クライアントがサポートする曲線のリストを返します。すべての既知の曲線は名前でリストされ、未知の曲線は 16 進数で表示されます (例: 0x001d:prime256v1:secp521r1:secp384r1)。 |
$ssl_curves (ngx_stream_ssl_module) | クライアントがサポートする曲線のリストを返します。すべての既知の曲線は名前でリストされ、未知の曲線は 16 進数で表示されます (例: 0x001d:prime256v1:secp521r1:secp384r1)。 |
$ssl_early_data | TLS 1.3 の初期データが使用され、ハンドシェイクが完了していない場合は 1 を返し、それ以外の場合は空を返します。 |
$ssl_preread_alpn_protocols | ALPN を通じてクライアントによってアドバタイズされたプロトコルのリストを返します。値はカンマで区切られます。 |
$ssl_preread_protocol | クライアントがサポートする SSL (Secure Sockets Layer) プロトコルの最高バージョン。 |
$ssl_preread_server_name | SNI (Sever Name Indication) を通じて要求されたサーバーの名前を返します。 |
$ssl_protocol (ngx_http_ssl_module) | 確立された SSL 接続のプロトコルを返します。 |
$ssl_protocol (ngx_stream_ssl_module) | 確立された SSL 接続のプロトコルを返します。 |
$ssl_server_name (ngx_http_ssl_module) | SNI (Server Name Indication) を通じて要求されたサーバーの名前を返します。 |
$ssl_server_name (ngx_stream_ssl_module) | SNI (Server Name Indication) を通じて要求されたサーバーの名前を返します。 |
$ssl_session_id (ngx_http_ssl_module) | 確立された SSL 接続のセッション ID を返します。 |
$ssl_session_id (ngx_stream_ssl_module) | 確立された SSL 接続のセッション ID を返します。 |
$ssl_session_reused (ngx_http_ssl_module) | SSL セッションが再利用された場合は「r」を返し、または「.」を返します。さもないと。 |
$ssl_session_reused (ngx_stream_ssl_module) | SSL セッションが再利用された場合は「r」を返し、または「.」を返します。さもないと。 |
$status (ngx_http_core_module) | 応答ステータス。 |
$status (ngx_http_log_module) | 応答ステータス。 |
$status (ngx_stream_core_module) | セッション ステータス。次のいずれかになります。 200: セッションは正常に完了しました。 400: クライアントのデータを解析できませんでした。 403: アクセスは禁止されています。 500内部サーバーエラー。 502不正なゲートウェイ。 503: サービスが利用できません。 |
$tcpinfo_rtt | クライアントの TCP 接続に関する情報を表示します。 TCP_INFO ソケットオプション。 |
$tcpinfo_rttvar | クライアントの TCP 接続に関する情報を表示します。 TCP_INFO ソケットオプション。 |
$tcpinfo_snd_cwnd | クライアントの TCP 接続に関する情報を表示します。 TCP_INFO ソケットオプション。 |
$tcpinfo_rcv_space | クライアントの TCP 接続に関する情報を表示します。 TCP_INFO ソケットオプション。 |
$time_iso8601 (ngx_http_core_module) | ISO 8601 の標準形式で現地時間を表示します。 |
$time_iso8601 (ngx_http_log_module) | ISO 8601 の標準形式で現地時間を表示します。 |
$time_iso8601 (ngx_stream_core_module) | ISO 8601 の標準形式で現地時間を表示します。 |
$time_local (ngx_http_core_module) | ローカル時刻を共通ログの形式で表示します |
$time_local (ngx_http_log_module) | 現地時間を共通ログ形式で表示します。 |
$time_local (ngx_stream_core_module) | 現地時間を共通ログ形式で表示します。 |
$uid_got | Cookie の名前と受信したクライアント ID。 |
$uid_reset | 変数が「空ではない」文字列に設定されている場合は、それが「0」ではないことを意味し、クライアント識別子はリセットされます。特別な値 ログ さらに、リセット識別子に関するメッセージが error_log に出力されます。 |
$uid_set | Cookie の名前と送信されたクライアント ID。 |
$upstream_addr (ngx_http_upstream_module) | IP アドレスとポート、または上流サーバーの UNIX ドメイン ソケットへのパスが保持されます。リクエストの処理中に複数のサーバーにアクセスした場合、それらのアドレスはカンマで区切られます。 |
$upstream_addr (ngx_stream_upstream_module) | IP アドレスとポート、または上流サーバーの UNIX ドメイン ソケットへのパスが保持されます。リクエストの処理中に複数のサーバーにアクセスした場合、それらのアドレスはカンマで区切られます。 |
$upstream_bytes_received (ngx_http_upstream_module) | 上流ストリーム サーバーから受信したバイト数。複数の接続の値は、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_bytes_received (ngx_stream_upstream_module) | 上流ストリーム サーバーから受信したバイト数。複数の接続からの値は、アドレスのようにカンマ (,) とコロン (:) で区切られます。 $upstream_addr 変数。 |
$upstream_bytes_sent (ngx_http_upstream_module) | 上流のストリーム サーバーに送信されたバイト数。複数の接続からの値は、アドレスのようにカンマ (,) とコロン (:) で区切られます。 $upstream_addr 変数。 |
$upstream_bytes_sent (ngx_stream_upstream_module) | 上流のストリーム サーバーに送信されたバイト数。複数の接続からの値は、アドレスのようにカンマ (,) とコロン (:) で区切られます。 $upstream_addr 変数。 |
$upstream_cache_status | レスポンスキャッシュへのアクセス状態を保持します。ステータスは、「BYPASS」、「MISS」、「EXPIRED」、「STALE」、「REVALIDATED」、「UPDATING」、「HIT」のいずれかです。 |
$upstream_connect_time (ngx_http_upstream_module) | これは、上流サーバー (1.9.1) との接続の確立に費やされる時間を保持するために使用されます。時間はミリ秒単位で秒単位で保持されます。 SSL の場合、ハンドシェイクにかかる時間が追加されます。複数の接続の時間は、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_connect_time (ngx_stream_upstream_module) | 上流サーバーに接続する時間を維持します。時間は秒単位でミリ秒単位で保持されます。複数の接続の時間は、$upstream_addr 変数内のアドレスのようにカンマ (,) で区切られます。 |
$upstream_cookie_name | Set-Cookie 応答ヘッダー フィールドで上流サーバーによって送信される、定義された名前を持つ Cookie。最後のサーバーの応答からの Cookie のみが保存されます。 |
$upstream_first_byte_time | データの最初のバイトを受信する時間。時間はミリ秒単位で秒単位で保持されます。複数の接続の時間は、$upstream_addr 変数内のアドレスのようにカンマ (,) で区切られます。 |
$upstream_header_time | これは、上流サーバーからのヘッダーの受信に費やされる時間を維持するために使用されます。複数の接続の時間は、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_http_name | サーバー応答ヘッダー フィールドを保持します。 |
$upstream_queue_time | これは、リクエストが上流のキューで費やした時間を保持するために使用されます。時間は秒単位でミリ秒単位で保持されます。複数の接続の時間は、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_response_length | 上流サーバーから取得した応答の長さを保持するために使用されます。長さはバイト単位で保持されます。複数の応答の長さは、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_response_time | これは、上流サーバーからの応答の受信に費やされる時間を維持するために使用されます。時間は秒単位でミリ秒単位で保持されます。複数の接続の時間は、$upstream_addr 変数のアドレスと同様に、カンマ (,) とコロン (:) で区切られます。 |
$upstream_session_time | ミリ秒分解能の秒単位のセッション継続時間。複数の接続の時間は、$upstream_addr 変数内のアドレスのようにカンマ (,) で区切られます。 |
$upstream_status | 上流サーバーから取得したレスポンスのステータスコードを保持するために使用されます。いくつかの応答のステータス コードは、$upstream_addr 変数のアドレスのように、カンマ (,) とコロン (:) で区切られています。サーバーを選択できない場合、変数には 502 (Bad Gateway) ステータス コードが保持されます。 |
$upstream_trailer_name | 上流サーバーから取得した応答の末尾からフィールドを保持するために使用されます。 |
タイプ | リクエスト内の現在の URI (正規化されたもの)。リクエスト処理中に $uri の値を変更できます。内部リダイレクトを実行するとき、またはインデックス ファイルを使用するとき。 |