付録B CGIプログラムに渡す環境変数
WebサーバがCGIプログラムに渡す環境変数の一覧を表B-1,表B-2,表B-5,および表B-8に,SSL_SERVER_要素の例,SSL_SERVER_I_要素の例を,表B-3,表B-4に示します。プラットフォーム,クライアントの設定,リクエストの形,Webサーバのディレクティブの設定などによって,ここで記載されている環境変数が設定されない場合や,記載していない環境変数が設定される場合もあります。表の中のサーバ名,ドメイン名,メールアドレスなどはすべて架空の値です。
環境変数名 |
内容 |
例 |
---|---|---|
AUTH_TYPE |
ユーザ認証をする場合の認証タイプ |
Basic |
COMSPEC |
コマンドプロンプトの実行可能ファイル |
C:\WINNT\system32\cmd.exe |
CONTENT_LENGTH |
クライアントからのリクエストがPOSTの場合の,データのバイト数 |
20 |
CONTENT_TYPE |
クライアントからのリクエストがPOSTの場合のコンテンツタイプ |
application/x-www-form-urlencoded |
DOCUMENT_ROOT |
DocumentRootディレクティブ指定値 |
<Application Serverのインストールディレクトリ>/httpsd/htdocs |
GATEWAY_INTERFACE |
CGIバージョン |
CGI/1.1 |
HTTP_ACCEPT |
クライアントが示したAcceptヘッダの値 |
image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */* |
HTTP_ACCEPT_CHARSET |
クライアントが示したAccept-Charsetヘッダの値 |
Shift_JIS,*,utf-8 |
HTTP_ACCEPT_ENCODING |
クライアントが示したAccept-Encodingヘッダの値 |
gzip |
HTTP_ACCEPT_LANGUAGE |
クライアントが示したAccept-Languageヘッダの値 |
ja,fr, en,it |
HTTP_CONNECTION |
クライアントが示したConnectionヘッダの値 |
Keep-Alive |
HTTP_HOST |
クライアントが示したHostヘッダの値 |
www.hws.hitachi.co.jp:8080 |
HTTP_PRAGMA |
クライアントが示したPragmaヘッダの値 |
no-cache |
HTTP_REFERER |
クライアントが示したRefererヘッダの値 |
http://www.hws.hitachi.co.jp:8080/test.html |
HTTP_USER_AGENT |
クライアントが示したUser-Agentヘッダの値 |
Mozilla/4.73 [ja] (WinNT; U) |
PATH |
Webサーバ上のPATH情報 |
C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem |
PATH_INFO |
URLのうちCGIスクリプトより後ろの部分 |
/dir1/file1 |
PATH_TRANSLATED |
ファイルシステムに変換されたPATH_INFOの値 |
<Application Serverのインストールディレクトリ>\httpsd\htdocs\dir1\file1 |
QUERY_STRING |
クライアントから送信されたQuery String(問い合わせ文字列) |
query1=a&query2=b |
REMOTE_ADDR |
クライアントのアドレス |
172.17.xx.xx |
REMOTE_HOST |
クライアントのホスト名(HostnameLookupsがOff以外でホスト名が解決された場合) |
hostxxx |
REMOTE_IDENT |
クライアントのID(IdentityCheckディレクティブ参照) |
unknown |
REMOTE_PORT |
クライアントのポート番号 |
2298 |
REMOTE_USER |
認証されたリクエストの場合の認証ユーザ名 |
Userxxx |
REQUEST_METHOD |
クライアントから送信されたHTTPメソッド |
GET |
REQUEST_URI |
クライアントから送信されたリクエストURI |
/cgi-bin/test-cgi?query1=a&query2=b |
SCRIPT_FILENAME |
リクエストされたCGIスクリプトのファイル名 |
<Application Serverのインストールディレクトリ>/httpsd/cgi-bin/test-cgi |
SCRIPT_NAME |
リクエストされたCGIスクリプトのURI |
/cgi-bin/test-cgi |
SERVER_ADDR |
WebサーバのIPアドレス |
172.17.xx.xx |
SERVER_ADMIN |
ServerAdminディレクティブ指定値 |
www-admin@server.example.com |
SERVER_NAME |
Webサーバのホスト名(UseCanonicalNameディレクティブ参照) |
www.hws.hitachi.co.jp |
SERVER_PORT |
Webサーバのポート名(UseCanonicalNameディレクティブ参照) |
8080 |
SERVER_PROTOCOL |
クライアントが示したHTTPバージョン |
HTTP/1.0 |
SERVER_SIGNATURE |
Webサーバの署名(HTMLタグを含む)(ServerSignatureディレクティブ参照) |
<ADDRESS>Cosminexus HTTP Server 09-00 at www.example.com Port 8080</ADDRESS> |
SERVER_SOFTWARE |
Webサーバのプログラム名 |
Cosminexus HTTP Server 09-00 |
SYSTEMROOT |
システムディレクトリ |
C:\WINNT |
TZ |
Webサーバのタイムゾーン |
JST-9 |
WINDIR |
システムディレクトリ |
C:\WINNT |
環境変数名 |
内容 |
例 |
---|---|---|
HTTPS |
セキュア通信を示します。 |
on |
HTTPS_CIPHER_ALGKEYSIZE※ |
対称鍵暗号の鍵のビット数 |
128 |
HTTPS_CIPHER_USEKEYSIZE※ |
対称鍵暗号の鍵のビット数のうち,有効なビット数 |
128 |
SSL_CIPHER※ |
SSL暗号種別(HTTPS_CIPHERと同じ) |
AES128-SHA256 |
SSL_PROTOCOL※ |
SSLプロトコルバージョン |
TLSv1.2 |
SSL_SERVER_S_DN※ |
SSLサーバ証明書のsubjectのDistinguish Name |
/C=JP/ST=Kanagawa/L=Yokohama-shi/O=HITACHI/OU=WebSite/CN=www.hws.hitachi.co.jp/EMAIL=www-admin@hws.hitachi.co.jp |
SSL_SERVER_要素 |
SSLサーバ証明書のsubjectのDistinguish Nameの各要素 |
SSL_SERVER_S_DNが上記の例の場合を表B-3に示します。 |
SSL_SERVER_I_DN※ |
SSLサーバ証明書のissuerのDistinguish Name |
/C=JP/ST=Kanagawa/L=Yokohama-shi/O=LOCAL-CA/OU=ca1/CN=ca1.hitachi.co.jp/EMAIL=ca-admin@ca1.hitachi.co.jp |
SSL_SERVER_I_要素 |
SSLサーバ証明書のissuerのDistinguish Nameの各要素 |
SSL_SERVER__I_DNが上記の例の場合を表B-4に示します。 |
SSL_SESSION_ID※ |
SSLセションID(16進数) |
F968F8D7075B76587F35931DC594D3E3 |
SSL_SSLEAY_VERSION |
OpenSSLのバージョン |
OpenSSL 1.0.2j 26 Sep 2016 |
- 注※
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
表B‒3 SSL_SERVER_要素の例 環境変数名
内容
例
SSL_SERVER_CERT※2
SSLサーバ証明書
"-----BEGIN CERTIFICATE-----¥n
MIIDrTCCAxagAwIBAgIBAjANBgk...¥n
-----END CERTIFICATE-----¥n"
SSL_SERVER_S_DN_C※1
SSLサーバ証明書のsubject(Webサーバ)のCountry Name
JP
SSL_SERVER_S_DN_CN※1
SSLサーバ証明書のsubjectのCommon Name
www.hws.hitachi.co.jp
SSL_SERVER_S_DN_Email※1
SSLサーバ証明書のsubjectのE-Mailアドレス
www-admin@hws.hitachi.co.jp
SSL_SERVER_S_DN_L※1
SSLサーバ証明書のsubjectのLocality Name
Yokohama-shi
SSL_SERVER_S_DN_O※1
SSLサーバ証明書のsubjectのOrganization Name
HITACHI,Ltd.
SSL_SERVER_S_DN_OU※1
SSLサーバ証明書のsubjectのOrganization Unit Name
WebSite
SSL_SERVER_S_DN_ST※1
SSLサーバ証明書のsubjectのState Name
Kanagawa
- 注※1
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
- 注※2
-
コンフィグファイルにSSLOptions +ExportCertDataを指定した場合に環境変数が設定されます。
表B‒4 SSL_SERVER_I_要素の例 環境変数名
内容
例
SSL_SERVER_I_DN_C※
SSLサーバ証明書のissuer(発行者)のCountry Name
JP
SSL_SERVER_I_DN_CN※
SSLサーバ証明書のissuerのCommon Name
ca1.hitachi.co.jp
SSL_SERVER_I_DN_Email※
SSLサーバ証明書のissuerのE-Mailアドレス
ca-admin@ca1.hitachi.co.jp
SSL_SERVER_I_DN_L※
SSLサーバ証明書のissuerのLocality Name
Yokohama-shi
SSL_SERVER_I_DN_O※
SSLサーバ証明書のissuerのOrganization Name
LOCAL-CA
SSL_SERVER_I_DN_OU※
SSLサーバ証明書のissuerのOrganization Unit Name
ca1
SSL_SERVER_I_DN_ST※
SSLサーバ証明書のissuerのState Name
Kanagawa
- 注※
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
表B‒5 SSLクライアント認証時の環境変数一覧 環境変数名
内容
例
SSL_CLIENT_CERT※2
SSLサーバ証明書
"-----BEGIN CERTIFICATE-----¥n
MIIDrTCCAxagAwIBAgIBAjANBgk...¥n
-----END CERTIFICATE-----¥n"
SSL_CLIENT_CERT_CHAIN_n※2
SSLサーバ証明書
"-----BEGIN CERTIFICATE-----¥n
MIIDrTCCAxagAwIBAgIBAjANBgk...¥n
-----END CERTIFICATE-----¥n"
SSL_CLIENT_S_DN※1
SSLクライアント証明書のsubjectのDistinguish Name
/C=JP/ST=Kanagawa/L=Yokohama/O=Hitachi/OU=soft/CN=c_name/EMAIL=c_name@soft.hitachi.co.jp
SSL_CLIENT_要素
SSLクライアント証明書のsubjectのDistinguish Nameの各要素
SSL_CLIENT_S_DNが上記の例の場合を表B-6に示します。
SSL_CLIENT_I_DN※1
SSLクライアント証明書のissuerのDistinguish Name
/C=JP/ST=Kanagawa/L=Yokohama-shi/O=LOCAL-CA/OU=ca1/CN=ca1.hitachi.co.jp/EMAIL=ca-admin@ca1.hitachi.co.jp
SSL_CLIENT_I_要素
SSLクライアント証明書のissuerのDistinguish Nameの各要素
SSL_CLIENT_I_DNが上記の例の場合を表B-7に示します。
- 注※1
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
- 注※2
-
コンフィグファイルにSSLOptions +ExportCertDataを指定した場合に環境変数が設定されます。
表B‒6 SSL_CLIENT_要素の例 環境変数名
内容
例
SSL_CLIENT_S_DN_C※
SSLクライアント証明書のsubjectのCountry Name
JP
SSL_CLIENT_S_DN_CN※
SSLクライアント証明書のsubjectのCommon Name
c_name
SSL_CLIENT_S_DN_Email※
SSLクライアント証明書のsubjectのE-Mailアドレス
c_name@soft.hitachi.co.jp
SSL_CLIENT_S_DN_L※
SSLクライアント証明書のsubjectのLocality Name
Yokohama
SSL_CLIENT_S_DN_O※
SSLクライアント証明書のsubjectのOrganization Name
Hitachi
SSL_CLIENT_S_DN_OU※
SSLクライアント証明書のsubjectのOrganization Unit Name
soft
SSL_CLIENT_S_DN_ST※
SSLクライアント証明書のsubjectのState Name
Kanagawa
- 注※
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
表B‒7 SSL_CLIENT_I_要素の例 環境変数名
内容
例
SSL_CLIENT_I_DN_C※
SSLクライアント証明書のissuerのCountry Name
JP
SSL_CLIENT_I_DN_CN※
SSLクライアント証明書のissuerのCommon Name
ca1.hitachi.co.jp
SSL_CLIENT_I_DN_Email※
SSLクライアント証明書のissuerのE-Mailアドレス
ca-admin@ca1.hitachi.co.jp
SSL_CLIENT_I_DN_L※
SSLクライアント証明書のissuerのLocality Name
Yokohama-shi
SSL_CLIENT_I_DN_O※
SSLクライアント証明書のissuerのOrganization Name
LOCAL-CA
SSL_CLIENT_I_DN_OU※
SSLクライアント証明書のissuerのOrganization Unit Name
ca1
SSL_CLIENT_I_DN_ST※
SSLクライアント証明書のissuerのState Name
Kanagawa
- 注※
-
コンフィグファイルにSSLOptions +StdEnvVarsを指定した場合に環境変数が設定されます。
表B‒8 HTTP/2通信時の環境変数一覧 環境変数名
内容
例
HTTP2
HTTP/2通信
on
H2_STREAM_ID
HTTP/2ストリーム番号
13
H2_STREAM_TAG
サーバスレッド固有なID-ストリームID
44-13