(PWS4 IIS4 IIS5)
ServerVariables — HTTP クエリ文字列内の変数の値を取得します。
Request.ServerVariables( server environment variable )
server environment variable:取得するサーバー環境変数の名前を指定します。次のいずれかの値を指定できます。
変数 | 説明 |
---|---|
ALL_HTTP | クライアントから送信されたすべての HTTP ヘッダーです。 |
ALL_RAW | すべてのヘッダーを元の形式のままで取得します。ALL_RAW と ALL_HTTP との違いは、ALL_HTTP ではヘッダー名の前にプリフィックス “HTTP_” が付き、ヘッダー名が常に大文字に変換される点にあります。ALL_RAW では、ヘッダー名と値がクライアントから送信されたままの形で渡されます。 |
APPL_MD_PATH | ISAPI DLL 用のアプリケーションのメタベース パスを取得します。 |
APPL_PHYSICAL_PATH | メタベース パスに対応する物理パスを取得します。IIS は、この値を返すときに、APPL_MD_PATH を物理 (ディレクトリ) パスに変換します。 |
AUTH_PASSWORD | クライアントの認証ダイアログに入力された値です。この変数は、基本認証が使用されている場合にのみ利用できます。 |
AUTH_TYPE | 保護されたスクリプトにユーザーがアクセスしようとしたときに、サーバーがそのユーザーを確認するために使用する認証方法です。 |
AUTH_USER | 元の形式のままの認証ユーザー名です。 |
CERT_COOKIE | クライアント証明書の一意の ID が文字列として返されます。クライアント証明書全体の署名として使用できます。 |
CERT_FLAGS | クライアント証明書が存在する場合は、bit0 は 1 に設定されます。 クライアント証明書の証明機関が無効な場合 (該当する証明機関がサーバー上の既知の CA の一覧に存在しない場合) は、bit1 は 1 に設定されます。 |
CERT_ISSUER | クライアント証明書の Issuer フィールドです (O=MS、OU=IAS、CN=ユーザー名、C=USA)。 |
CERT_KEYSIZE | SSL 接続キー サイズのビット数 (128 など) です。 |
CERT_SECRETKEYSIZE | サーバー証明書秘密キーのビット数 (1024 など) です。 |
CERT_SERIALNUMBER | クライアント証明書のシリアル番号フィールドです。 |
CERT_SERVER_ISSUER | サーバー証明書の Issuer フィールドです。 |
CERT_SERVER_SUBJECT | サーバー証明書の Subject フィールドです。 |
CERT_SUBJECT | クライアント証明書の Subject フィールドです。 |
CONTENT_LENGTH | クライアントから提供されるコンテンツの長さです。 |
CONTENT_TYPE | コンテンツのデータ型です。HTTP クエリの GET、POST、PUT など、情報が既に添付されているクエリで使用されます。 |
GATEWAY_INTERFACE | サーバーで使用する CGI 仕様のリビジョン番号です。”CGI/revision” という形式で示されます。 |
HTTP_<HeaderName> | HeaderName に格納されている値です。この表に列挙されているもの以外の任意のヘッダーには、ServerVariables コレクションがその値を取得できるように、必ずその前にプリフィックス “HTTP_” を付ける必要があります。
|
HTTP_ACCEPT | Accept ヘッダーの値を返します。 |
HTTP_ACCEPT_LANGUAGE | コンテンツの表示に使用する言語を説明する文字列を返します。 |
HTTP_USER_AGENT | 要求を送信したブラウザを説明する文字列を返します。 |
HTTP_COOKIE | 要求に含まれている cookie 文字列を返します。 |
HTTP_REFERER | リダイレクトが発生したときに、元の要求の URL を含む文字列を返します。 |
HTTPS | 保護されたチャンネル (SSL) を経由して要求を受け取った場合は ON を返します。保護されていないチャンネルに対する要求の場合は OFF を返します。 |
HTTPS_KEYSIZE | SSL 接続キー サイズのビット数 (128 など) です。 |
HTTPS_SECRETKEYSIZE | サーバー証明書秘密キーのビット数 (1024 など) です。 |
HTTPS_SERVER_ISSUER | サーバー証明書の Issuer フィールドです。 |
HTTPS_SERVER_SUBJECT | サーバー証明書の Subject フィールドです。 |
INSTANCE_ID | IIS インスタンスの ID を文字形式で表したものです。インスタンス ID が 1 の場合、1 が文字列として表示されます。この変数を使用すると、要求が属する (メタベース内の) Web サーバー インスタンスの ID を取得できます。 |
INSTANCE_META_PATH | 要求に応答する IIS のインスタンスのメタベース パスです。 |
LOCAL_ADDR | 要求を受け取ったサーバー アドレスを返します。これは、コンピュータに複数の IP アドレスがバインドされている可能性のあるマルチホーム コンピュータで、要求が使用したアドレスを特定する場合に重要な情報です。 |
LOGON_USER | ユーザーがログインした Windows アカウントです。 |
PATH_INFO | クライアントから提供される補足パス情報です。このサーバー変数 PATH_INFO と仮想パスを使用してスクリプトにアクセスできます。この情報が URL からのものである場合は、サーバーによってデコードされてから CGI スクリプトに渡されます。 |
PATH_TRANSLATED | PATH_INFO が変換されたものです。パスをたどって必要な仮想パスと物理パスの間のマッピングを実行します。 |
QUERY_STRING | HTTP 要求内の疑問符 (?) の後の文字列に格納されているクエリ情報です。 |
REMOTE_ADDR | 要求を出したリモート ホストの IP アドレスです。 |
REMOTE_HOST | 要求を出したホストの名前です。サーバーがこの情報を持っていない場合、サーバーは REMOTE_ADDR を設定してこの変数を空のままにします。 |
REMOTE_USER | ユーザーから送信された、マップされていないユーザー名文字列です。これは、サーバーにインストールされている認証フィルタによって変更された名前ではなく、ユーザーから実際に送信された名前です。 |
REQUEST_METHOD | 要求を出すために使用されたメソッドです。HTTP では GET、HEAD、POST などのメソッドがあります。 |
SCRIPT_NAME | 実行されたスクリプトへの仮想パスです。このパスは自己参照 URL の場合に使用されます。 |
SERVER_NAME | 自己参照 URL 内に出現する、サーバーのホスト名、DNS エイリアス、または IP アドレスです。 |
SERVER_PORT | 要求が送られたポート番号です。 |
SERVER_PORT_SECURE | 0 または 1 が格納される文字列です。保護されたポート上で要求が処理された場合は 1、そうでない場合は 0 になります。 |
SERVER_PROTOCOL | 要求情報プロトコルの名前とリビジョン番号です。”protocol/revision” という形式で示されます。 |
SERVER_SOFTWARE | 要求に応答してゲートウェイを実行するサーバー ソフトウェアの名前とバージョンです。”name/version” という形式で示されます。 |
URL | URL のベース部分を示します。 |
説明
ServerVariables コレクションは、定義済み環境変数の値を取得します
ループを使用して個々のサーバー変数名を解析できます。たとえば、次のスクリプトはすべてのサーバー変数名を表形式で出力します。
1 2 3 4 5 6 | <table BORDER="1"> <tr><td><b>Server Variable</b></td><td><b>Value</b></td></tr> <% For Each strKey In Request.ServerVariables %> <tr><td> <%= strKey %> </td><td> <%= Request.ServerVariables(strKey) %> </td></tr> <% Next %> </table> |
ClientCertificate、Cookies、Form、QueryString も参照ください。