Share via


IIS サーバー変数

IIS サーバー変数は、サーバー、クライアントとの接続、および接続に対する現在の要求に関する情報を提供します。 さらに、受信 URL 書き換え規則を使用して、カスタム サーバー変数を設定できます。

注意

このドキュメントに記載されているすべてのサーバー変数は、IIS 8.5 より前のバージョンの IIS で使用できるわけではありません。

サーバー変数 説明
ALL_HTTP クライアントによって送信されるすべての HTTP ヘッダー。 ヘッダーの先頭には HTTP_ が付き、大文字が付いています。
たとえば、HTTP_ACCEPT_ENCODING:gzip, deflate, br のように指定します。
ALL_RAW クライアントから未加工の形式で送信されるすべての HTTP ヘッダー。
たとえば、Accept-Encoding: gzip, deflate, br のように指定します。
APPL_MD_PATH アプリケーションのメタベース パス。
APPL_PHYSICAL_PATH アプリケーションの物理パス。
APP_POOL_CONFIG 一時的な IIS アプリケーション プール構成の物理パス。
APP_POOL_ID 要求を処理する IIS ワーカー プロセスを実行しているアプリケーション プールの名前。
AUTH_PASSWORD 基本認証を使用して認証するためにクライアントによって提供されるパスワード。
AUTH_TYPE サーバーがユーザーの検証に使用する認証方法。
AUTH_TYPEに値が含まれており、認証スキームが Basic または統合Windows 認証でない場合、ユーザーが認証されたことを意味するものではありません。 サーバーは、ISAPI フィルターがその特定のスキームを処理できる可能性があるため、ネイティブにサポートされていない認証スキームを許可します。
AUTH_USER ユーザー名が Windows アカウントにマップされる前に、クライアントによって送信された承認ヘッダーから派生したユーザーの名前。 この変数は、REMOTE_USERと変わります。 受信ユーザーをアカウントにマップする認証フィルターが Web サーバーにインストールされている場合は、LOGON_USERを使用してマップされたユーザー名を表示します。
CACHE_URL ISAPI アプリケーションでのみ使用します。 現在の URL の明確な名前を返します。 この変数の Unicode バージョンをカーネル モードキャッシュ無効化関数と組み合わせて使用して、キャッシュに配置されたエントリをHSE_REQ_VECTOR_SENDによって削除する必要があります。
CERT_COOKIE クライアント証明書の一意の ID。文字列として返されます。 これは、クライアント証明書全体の署名として使用できます。
CERT_FLAGS クライアント証明書が存在する場合、bit0 は 1 に設定されます。
クライアント証明書の証明機関が無効な場合 (つまり、サーバー上の認識された証明機関の一覧にない) 場合、bit0 は 1 に設定されます。
CERT_FLAGSのビット 1 が 1 に設定され、証明書が無効であることを示す場合、IIS バージョン 4.0 以降は証明書を拒否します。 以前のバージョンの IIS では、証明書は拒否されません。
CERT_ISSUER クライアント証明書の発行者フィールド。
CERT_KEYSIZE SSL/TLS 接続キー サイズのビット数。
CERT_SECRETKEYSIZE SSL/TLS サーバーの秘密キーのビット数。
CERT_SERIALNUMBER クライアント証明書のシリアル番号。
CERT_SERVER_ISSUER サーバー証明書の発行者フィールド。
CERT_SERVER_SUBJECT サーバー証明書のサブジェクト フィールド。
CERT_SUBJECT クライアント証明書のサブジェクト フィールド。
CONTENT_LENGTH 要求本文の長さです。
CONTENT_TYPE 要求本文の MIME の種類。 GETPOSTPUT などの情報を添付したクエリで使用されます。
CRYPT_CIPHER_ALG_ID 接続の確立に使用される暗号化暗号アルゴリズム。 アルゴリズムの 16 進値は、 ALG_IDデータ型で確立されます。
たとえば、256 ビット AES(CALG_AES_256) は になります 6610
CRYPT_HASH_ALG_ID メッセージ認証コード (MAC) の生成に使用されるハッシュ アルゴリズム。 アルゴリズムの 16 進値は、 ALG_IDデータ型で確立されます。
たとえば、MD5(CALG_MD5) は になります 8003
CRYPT_KEYEXCHANGE_ALG_ID 接続の確立に使用されるキー交換アルゴリズム。 アルゴリズムの 16 進値は、 ALG_IDデータ型で確立されます。
たとえば、キー交換アルゴリズム (CALG_ECDH) Diffie-Hellman楕円曲線は になります aa05
CRYPT_PROTOCOL 接続の確立に使用される暗号化プロトコル。 プロトコルの 16 進値は、 SecPkgContext_ConnectionInfo構造体で確立されます。
たとえば、 TLS 1.2 は になります 400
DOCUMENT_ROOT IIS Web サイトのディレクトリの物理パス。
FORWARDED_URL 転送された URL。
GATEWAY_INTERFACE サーバーで使用される CGI 仕様のリビジョン。 形式は CGI/revision です。
HTTPS 要求がセキュリティで保護されたチャネル (SSL など) を介して送信された場合は ON を返します。または、要求が安全でないチャネルの場合は OFF を返します。
HTTPS_KEYSIZE SSL/TLS 接続キー サイズのビット数。
HTTPS_SECRETKEYSIZE サーバー証明書の秘密キーのビット数。
HTTPS_SERVER_ISSUER サーバー証明書の発行者フィールド。
HTTPS_SERVER_SUBJECT サーバー証明書の [サブジェクト] フィールド。
HTTP_METHOD 要求を行うために使用されるメソッド。
HTTP_URL 生でエンコードされた URL。
たとえば、/vdir/default.aspx?querystring のように指定します。
HTTP_VERSION 要求プロトコルの名前とバージョン ( SERVER_PROTOCOLの生形式)。
INSTANCE_ID IIS サイト ID。
INSTANCE_META_PATH 要求に応答する IIS のインスタンスのメタベース パス。
Instance_name IIS サイト名。
LOCAL_ADDR 要求が送信されたサーバー アドレス。 これは、コンピューターに複数の IP アドレスがバインドされている可能性があり、使用した要求のアドレスを確認するコンピューターで重要です。
LOGON_USER Web サーバーへの接続中にユーザーが偽装している Windows アカウント。 REMOTE_USERUNMAPPED_REMOTE_USER、またはAUTH_USERを使用して、要求ヘッダーに含まれる未加工のユーザー名を表示します。 これらの他の変数とは異なる値を保持LOGON_USER唯一の時間は、認証フィルターがインストールされている場合です。
MANAGED_PIPELINE_MODE 要求を処理する IIS ワーカー プロセスを実行しているアプリケーション プールのマネージド パイプライン モード。
PATH_INFO クライアントによって指定されたパス情報 (例: /vdir/myisapi.dll/zip)。 この情報が URL から取得された場合、CGI スクリプトまたは ISAPI フィルターに渡される前に、サーバーによってデコードされます。
AllowPathInfoForScriptMappings メタベース プロパティが true に設定されている場合 (排他的な CGI 機能をサポートするため)、PATH_INFOには が含まれる/zipだけで、ASP などの ISAPI アプリケーションは中断されます。
PATH_TRANSLATED PATH_INFO内の仮想パスにマップされる物理パス (例: c:\inetpub\wwwroot\vdir\myisapi.dll)。 この変数は、ISAPI アプリケーションの処理中に IIS によって使用されます。
AllowPathInfoForScriptMappings メタベース プロパティが true に設定されている場合 (排他的な CGI 機能をサポートするため)、PATH_INFOには が含まれる/zipだけで、ASP などの ISAPI アプリケーションは中断されます。
QUERY_STRING HTTP 要求の疑問符 (?) に続く文字列に格納されているクエリ情報。
REMOTE_ADDR 要求を行っているリモート ホストの IP アドレス。
REMOTE_HOST 要求を行っているホストの名前。 サーバーにこの情報がない場合は、REMOTE_ADDR設定され、この情報は空のままにされます。
REMOTE_PORT TCP 接続のクライアント ポート番号。
REMOTE_USER ユーザー名が Windows アカウントにマップされる前に、クライアントによって送信された承認ヘッダーから派生したユーザーの名前。 受信ユーザーをアカウントにマップする認証フィルターが Web サーバーにインストールされている場合は、LOGON_USERを使用してマップされたユーザー名を表示します。
REQUEST_FILENAME 現在の要求の物理パス。
REQUEST_FLAGS HTTP_REQUESTのフラグ。
たとえば、フラグは HTTP_REQUEST_FLAG_HTTP2 HTTP/2 要求に設定されます。
REQUEST_METHOD 要求を行うために使用される メソッド。
REQUEST_URI URI のパス絶対部分。
たとえば https://contoso.com:8042/over/there?name=ferret 、 は を返します /over/there
SCRIPT_FILENAME 現在の要求の物理パス。
SCRIPT_NAME 実行されているスクリプトへの仮想パス。
SCRIPT_TRANSLATED 要求されたファイルへの 拡張長パス (プレフィックスは \\?\)。
SERVER_ADDR サイトがバインドされている IP アドレス。
Server_name サーバーのホスト名、DNS エイリアス、または IP アドレスは、自己参照 URL に表示されます。
SERVER_PORT 要求が送信されたサーバー ポート番号。
SERVER_PORT_SECURE または 10含む文字列。 要求がセキュリティで保護されたポートで処理されている場合、これは です 1。 それ以外の場合は、0 となります。
SERVER_PROTOCOL 要求情報プロトコルの名前とリビジョン。 形式はプロトコル/リビジョンです。 ( HTTP_VERSIONの正規化形式。
SERVER_SOFTWARE 要求に応答してゲートウェイを実行するサーバー ソフトウェアの名前とバージョン。 形式は名前/バージョンです。
UNENCODED_URL 未エンコード URL。
UNMAPPED_REMOTE_USER ユーザー名が Windows アカウントにマップされる前に、クライアントから送信された承認ヘッダーから派生したユーザーの名前 (REMOTE_USERと同じです)。 受信ユーザーをアカウントにマップする認証フィルターが Web サーバーにインストールされている場合は、LOGON_USERを使用してマップされたユーザー名を表示します。
URL クエリ文字列情報のない URL のベース部分。