Webプログラミング研究所〜初心者・中級者Webプログラマ(CGI・Perl・PHP・Javaプログラム言語)のための支援サイト〜 「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ
 

Perl・PHP・JavaでHTTP環境変数を取得する方法

 
環境変数を利用すると、Webプログラムを設置したサーバ環境の情報やWebアプリケーションの状態等を取得することができます。
以下に、環境変数の説明、およびPerl、PHP、Javaによる主な環境変数の取得方法を記載します。

Perl:Perl  PHP:PHP  Java:Java 

「CGI(Perl)」で環境変数を取得するサンプルプログラム「CGI(Perl)」で環境変数を取得するサンプルプログラム
「PHP」で環境変数を取得するサンプルプログラム「PHP」で環境変数を取得するサンプルプログラム
「Javaサーブレット」で環境変数を取得するサンプルプログラム「Javaサーブレット」で環境変数を取得するサンプルプログラム
「JSP」で環境変数を取得するサンプルプログラム「JSP」で環境変数を取得するサンプルプログラム

SERVER_NAME
説明
実行したCGIを設置しているサーバのホスト名です。
Perl
$ENV{"SERVER_NAME"}
PHP
$_SERVER["SERVER_NAME"]
$HTTP_SERVER_VARS["SERVER_NAME"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getServerName()

GATEWAY_INTERFACE
説明
CGIのバージョンです。
Perl
$ENV{"GATEWAY_INTERFACE"}
PHP
$_SERVER["GATEWAY_INTERFACE"]
$HTTP_SERVER_VARS["GATEWAY_INTERFACE"] (PHP4.0.6以前の記述法)
Java

SERVER_PROTOCOL
説明
CGIに対してリクエストする時に、使用したプロトコル名とバージョンです。
Perl
$ENV{"SERVER_PROTOCOL"}
PHP
$_SERVER["SERVER_PROTOCOL"]
$HTTP_SERVER_VARS["SERVER_PROTOCOL"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getProtocol()

REQUEST_METHOD
説明
リクエストの際に使用したメソッド。HTTPの場合は"GET", "POST", "HEAD"などがあります。
Perl
$ENV{"REQUEST_METHOD"}
PHP
$_SERVER["REQUEST_METHOD"]
$HTTP_SERVER_VARS["REQUEST_METHOD"] (PHP4.0.6以前の記述法)
Java
javax.servlet.http.HttpServletRequest#getMethod()

PATH_INFO
説明
拡張パス情報が格納されます。たとえば、「http://iwamode.net/cgi-bin/test.cgi/extra/」というURLでtest.cgiを実行した場合は、PATH_INFOには「/extra/」という文字列になります。
Perl
$ENV{"PATH_INFO"}
PHP
$_SERVER["PATH_INFO"]
$HTTP_SERVER_VARS["PATH_INFO"] (PHP4.0.6以前の記述法)
Java
javax.servlet.http.HttpServletRequest#getPathInfo()

SCRIPT_NAME
説明
スクリプト(CGI)が実行される仮想パスです。自分自身のURLを参照する時に使用します。クエリ情報は付加されません。
Perl
$ENV{"SCRIPT_NAME"}
PHP
$_SERVER["SCRIPT_NAME"]
$HTTP_SERVER_VARS["SCRIPT_NAME"] (PHP4.0.6以前の記述法)
Java
javax.servlet.http.HttpServletRequest#getServletPath()

QUERY_STRING
説明
URLの"?"より後ろの文字列を取得します。これはクエリ情報といいます。
Perl
$ENV{"QUERY_STRING"}
PHP
$_SERVER["QUERY_STRING"]
$HTTP_SERVER_VARS["QUERY_STRING"] (PHP4.0.6以前の記述法)
Java
javax.servlet.http.HttpServletRequest#getQueryString()

REMOTE_ADDR
説明
CGIにリクエストを送った送信元のサーバのIPアドレスです。
Perl
$ENV{"REMOTE_ADDR"}
PHP
$_SERVER["REMOTE_ADDR"]
$HTTP_SERVER_SERVER["REMOTE_ADDR"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getRemoteAddr()

REMOTE_HOST
説明
CGIにリクエストを送った送信元のサーバのホスト名です。この情報がサーバに無い場合は、空となります。
取得できない場合は、REMOTE_ADDRを取得してください。
Perl
$ENV{"REMOTE_HOST"}
PHP
$_SERVER["REMOTE_HOST"]
$HTTP_SERVER_SERVER["REMOTE_HOST"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getRemoteHost()

CONTENT_LENGTH
説明
標準入力のバイト数(リクエストデータのデータのバイト数)。
Perl
$ENV{"CONTENT_LENGTH"}
PHP
$_SERVER["CONTENT_LENGTH"]
$HTTP_SERVER_VARS["CONTENT_LENGTH"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getContentLength()

HTTP_USER_AGENT
説明
ユーザが使用しているブラウザ情報です。
Perl
$ENV{"HTTP_USER_AGENT"}
PHP
$_SERVER["HTTP_USER_AGENT"]
$HTTP_SERVER_VARS["HTTP_USER_AGENT"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getHeader("User-Agent")

HTTP_REFERER
説明
アクセスしたCGIの直前のページのURLです。
Perl
$ENV{"HTTP_REFERER"}
PHP
$_SERVER["HTTP_REFERER"]
$HTTP_SERVER_VARS["HTTP_REFERER"] (PHP4.0.6以前の記述法)
Java
javax.servlet.ServletRequest#getHeader("Referer")

HTTP_COOKIE
説明
クッキー情報がセットされます。
Perl
$ENV{"HTTP_COOKIE"}
PHP
$_SERVER["HTTP_COOKIE"]
$HTTP_SERVER_VARS["HTTP_COOKIE"] (PHP4.0.6以前の記述法)
Java
javax.servlet.http.Cookie#getValue()

「CGI(Perl)」で環境変数を取得するサンプルプログラム「CGI(Perl)」で環境変数を取得するサンプルプログラム
「PHP」で環境変数を取得するサンプルプログラム「PHP」で環境変数を取得するサンプルプログラム
「Javaサーブレット」で環境変数を取得するサンプルプログラム「Javaサーブレット」で環境変数を取得するサンプルプログラム
「JSP」で環境変数を取得するサンプルプログラム「JSP」で環境変数を取得するサンプルプログラム


Webプログラマになりたい人のためのスクール・講座情報

クリエイターの皆さん!お仕事ありますよ!フェローズに!

パソコンスクールガイド
積極的な情報収集が目標実現の近道です。

就職・起業・SOHO・それとも副業? デジハリがノウハウを伝授!

就転職に強い、資格取得スキルアップ専門校ヒューマンアカデミー

CsideNet レンタルサーバー サブドメイン型 780円/月 
CGI/SSI/PHPはもちろんデータベース(MySQL)、ブログ(Movable Type)まで利用できます。1週間の試用期間があるのがGood!!

転職・派遣・就職・アルバイトの求人情報検索支援サイト 〜 14ALL JOB SEARCH 〜
 
 
  「Webプログラミング研究所」TOPへ 「Webプログラミング研究所」TOPへ

Copyright (C) 2004 - 2005 IWAMODE Project All Rights Reserved.