CGIでの環境変数

■CGIでの環境変数


CGIでは、$ENV の名前の連想配列に環境変数が格納されています
環境変数を読み出すには、$ENV{要素名} のようにします。
以下ではCGIで使用する主な環境変数をサーバーから取得して出力しています。


▼ブラウザが対応しているContent-typeの一覧、全てに対応する場合は */* が入る

$ENV{HTTP_ACCEPT} = text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

▼ブラウザが対応しているエンコード方式

$ENV{HTTP_ACCEPT_ENCODING} = br,gzip

▼ブラウザが使用できる言語

$ENV{HTTP_ACCEPT_LANGUAGE} = en-US,en;q=0.5

▼ブラウザの接続方式

$ENV{HTTP_CONNECTION} =

▼ブラウザから送信されたクッキー

$ENV{HTTP_COOKIE} =

▼このCGIの呼び出し元のアドレス

$ENV{HTTP_REFERER} =

▼ブラウザの種類

$ENV{HTTP_USER_AGENT} = CCBot/2.0 (https://commoncrawl.org/faq/)

▼エンコードされた入力データ
URLでデータを入力すると値が格納されます。URLに aaa=bbb というデータを入力

$ENV{QUERY_STRING} =

▼呼び出し元のホスト名

$ENV{REMOTE_HOST} = ec2-3-238-202-29.compute-1.amazonaws.com

▼呼び出し元のIPアドレス

$ENV{REMOTE_ADDR} = 3.238.202.29

▼ブラウザがMETHODで指定したデータ取得手段

$ENV{REQUEST_METHOD} = GET

▼ブラウザから送られてきた要求のURI

$ENV{REQUEST_URI} = /Perl/env.cgi

▼CGIスクリプト名

$ENV{SCRIPT_NAME} = /Perl/env.cgi

▼POSTで送信されたデータ (標準入力から読み出します)

read (STDIN, $data, $ENV{'CONTENT_LENGTH'})
$data =






▼POSTで送信されたデータを切り出して連想配列に入れる

my @list = split(/&/, $data);
my @arry = ();
foreach (@list) {
my @mylist;
@mylist = split(/=/, $_);
$arry{$mylist[0]}=$mylist[1];
}

$arry{'text1'} =
$arry{'text2'} =


▲トップページ > perl 関連