[Up] [Next]
[Previous]
CGI環境変数
サーバにはあらかじめ予約されている環境変数があります。この環境変数は
CGI変数とも呼ばれ、CGIスクリプト上で使用することができます。Cの場合
getenv("変数名")関数を、Perl の場合$ENV{'変数名'}
で取り出すことができます。
SERVER_SOFTWARE
SERVER_SOFTWARE変数には、サーバソフトウェアのタイプが入ります。"サーバ
名/バージョン"というフォーマットです。(例: NCSA/1.42)
SERVER_NAME
SERVER_NAME変数には、WWWサーバのホスト名またはIPアドレスが入ります。
GATEWAY_INTERFACE
GATEWAY_INTERFACE変数には、WWWサーバが使用しているCGIのバージョン(一般
にCGI/1.1)が入ります。
SERVER_PROTOCOL
SERVER_PROTOCOL変数には、HTTPプロトコルのバージョン、一般にHTTP/1.0に
なっています。
SERVER_PORT
SERVER_PORT変数には、WWWサーバがHTTPの通信に使用しているTCPポート番号
が入ります。一般に80が使用されています。
REQUEST_METHOD
REQUEST_METHOD 変数には、クライアントの要求のメソッドが入ります。この
メソッドには7つのHTTPメソッド(GET, POST, HEAD, PUT, DELETE, LINK,
UNLINK)のうち一つが入ります。
PATH_INFO
PATH_INFO変数には、CGIに渡すパス情報が入ります。従って、QUERY_STRING
と同様に入力引数渡しとして使用する事もできます。
<A HREF="/cgi-bin/test-cgi/month=april/year=1995">サンプル</A>
サンプルのテスト
のようにしたい場合、PATH_INFOには、
"/month=april/year=1995"が入ります。
PATH_TRANSLATED
PATH_TRANSLATED変数には、PATH_INFOのURL部に一致するシステムフルパス名
が入ります。
SCRIPT_NAME
SCRIPT_NAME変数には、このCGIスクリプトのパス名、URL形式で入ります。
QUERY_STRING
QUERY_STRING変数にはGETメソッド形式で実行された場合の入力引数、"?"マー
ク以下全てが入ります。
REMOTE_HOST
REMOTE_HOST変数には、実行されたスクリプトのホスト名が入ります。
REMOTE_ADDR
REMOTE_ADDR変数には、実行されたスクリプトのIPアドレスが入ります。
AUTH_TYPE
サーバがユーザ認証機能がサポートされていたり、スクリプトがプロテクトさ
れている場合に使われている認証方式プロトコル名が入ります。現在サポート
されている認証方式は、Basic、MD5などがあります。
REMOTE_USER
スクリプトを実行したのユーザ名、サーバで認証機能が使われている場合にの
み送られます。
REMOTE_IDENT
WWWサーバでidentが実行されていた場合、identによって返される値が含まれ
ます。
CONTENT_TYPE
POST形式で実行される場合の形式は
application/x-www-form-urlencodedが入ります。
CONTENT_LENGTH
CONTENT_LENGTH変数には、CGIスクリプトがPOST形式で実行される場合の標準
入力のバイト数が入ります。
HTTP_ACCEPT
HTTP_ACCEPT変数には、HTTP Acceptヘッダで定義されたブラウザが許している
Content-typeのリストが入ります。全てが許される場合、'*/*'となります。
HTTP_USER_AGENT
HTTP_USER_AGENT変数には、ブラウザの情報、ブラウザのプログラム名、バー
ジョン番号等が入ります。一般には software/version
library/versionという形式です。
HTTP_REFERER
直前に参照していたURL、ブラウザによって送らないものもあります。
[Up] [Next]
[Previous]