CGI実行時の環境変数

CGIスクリプトが実行されるときの環境変数の一覧。

 http://orange/~hori/test/env.rb?foo=1&bar=2#hoge
というURIで呼び出した。
環境変数値,説明
DOCUMENT_ROOT/usr/local/apache/htdocs
GATEWAY_INTERFACECGI/1.1
HTTP_ACCEPT*/*
HTTP_ACCEPT_ENCODINGgzip, deflate
HTTP_ACCEPT_LANGUAGEja,en;q=0.5
HTTP_CONNECTIONKeep-Alive
HTTP_HOSTorange
HTTP_USER_AGENTMozilla/4.0 (compatible; MSIE 5.5; Windows 95)
J-PHONEの携帯電話だと,J-PHONE/3.0/J-SH06
PATH/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin
QUERY_STRINGfoo=1&bar=2
URLの'?'以降の文字列
REMOTE_ADDR192.168.1.3
REMOTE_PORT1106
REQUEST_METHODGET
HTTPメソッド。
REQUEST_URI/~hori/test/env.rb?foo=1&bar=2
SCRIPT_FILENAME/home/hori/public_html/test/env.rb
SCRIPT_NAME/~hori/test/env.rb
SERVER_ADDR192.168.1.9
SERVER_ADMINhori@orange.fruits
SERVER_NAMEorange.fruits
SERVER_PORT80
SERVER_PROTOCOLHTTP/1.1
SERVER_SIGNATURE<ADDRESS>Apache/1.3.20 Server at orange.fruits Port 80</ADDRESS>
SERVER_SOFTWAREApache/1.3.20 (Unix)

クライアントが携帯電話の場合の環境変数

環境変数値,説明
HTTP_X_JPHONE_COLOR C65536
HTTP_X_JPHONE_DISPLAY 96*104
HTTP_X_JPHONE_MSNAME J-SH06
HTTP_X_JPHONE_SMAF 16/pcm/grf
HTTP_X_JPHONE_SOUND 5

認証を行っている場合,次の環境変数も設定される。

環境変数値,説明
AUTH_TYPEBasic
REMOTE_USERhori
"basic"認証が行われた場合のみ設定される。

WebサーバーがApacheの場合,認証を行うには.htaccessに次のように記述する。

<Files env.rb>
  AuthType basic
  AuthName authtest
  AuthUserFile /home/hori/wwwdata/htpwd
  require user hori
</Files>

その他。

REMOTE_HOST
クライアントのホスト名。Apacheの場合,ホスト名を引く設定になっていて,かつDNSでホスト名が引けたときのみ設定される。
HTTP_REFERER
Refererリクエストヘッダの内容。リンク元のURIあるいはWebブラウザで直前に見ていたURI。
<img src="hoge.cgi">のようにHTMLのページに埋め込んだCGIプログラムを呼び出すと,このHTMLファイルのURLが得られ,役に立たない。
HTTP_COOKIE
クッキーの値。クッキーについては,RFC 2965など。
HTTP_VIA
プロキシサーバー経由の場合に設定される。Via general-header fieldの値。

外部リンク