サンプルコードを使ったPerl動作確認
では簡単なサンプルを作成して実際にブラウザからアクセスしてみます。
「ptest.pl」「ptest.cgi」「ptest.txt」の3つのファイルを作成しました。全てのファイルの中身は同一で下記の通りです。
#!"D:¥xampp¥perl¥bin¥perl.exe"
print "Content-type: text/plain¥n¥n";
print "Hello !¥n";
print "$ENV{'MOD_PERL'}";
※mod_perlを使う場合には1行目のPerlへのパス指定は不要(のはず)です。また次のいずれの記述方法でも構いません。
#!D:¥xampp¥perl¥bin¥perl.exe #!D:/xampp/perl/bin/perl.exe #!/xampp/perl/bin/perl
前のページにも記載しましたが、各ディレクトリにファイルを配置した場合にどのように処理が行われるのかは次の通りです。
・ディレクトリに関係なく拡張子が「.pl」のものはperl-scriptハンドラを使って処理される ・D:¥xampp¥htdocs¥modperl¥ と D:¥xampp¥htdocs¥modperlasp¥ 以下のファイルは拡張子に関係 なくperl-scriptハンドラを使って処理される ・D:¥xampp¥cgi-bin¥ 以下のファイルは「.pl」を除き拡張子に関係なくcgi-scriptハンドラで処理 される ・上記ディレクトリ以外の場所では拡張子が「.cgi」のものはcgi-scriptハンドラを使って処理される
では順に試していきます。
ドキュメントルート以下にファイルを配置
「ptest.pl」「ptest.cgi」「ptest.txt」の3つのファイルをドキュメントルート直下に配置します。
それぞれブラウザからアクセスしてみます。
http://localhost/ptest.pl :
http://localhost/ptest.cgi :
http://localhost/ptest.txt :
「ptest.pl」はperl-scriptハンドラで処理されます。「ptest.cgi」はcgi-scriptハンドラで処理されます。「ptest.txt」は単なるテキストファイルとして処理されます。
「D:¥xampp¥cgi-bin¥」以下に配置
「ptest.pl」「ptest.cgi」「ptest.txt」の3つのファイルを「D:¥xampp¥cgi-bin¥」ディレクトリ内に配置します。
それぞれブラウザからアクセスしてみます。
http://localhost/cgi-bin/ptest.pl :
http://localhost/cgi-bin/ptest.cgi :
http://localhost/cgi-bin/ptest.txt :
「ptest.pl」はperl-scriptハンドラで処理されます。「ptest.cgi」と「ptest.txt」はcgi-scriptハンドラで処理されます。
「D:¥xampp¥htdocs¥modperl¥」以下に配置
「ptest.pl」「ptest.cgi」「ptest.txt」の3つのファイルを「D:¥xampp¥htdocs¥modperl¥」ディレクトリ内に配置します。
それぞれブラウザからアクセスしてみます。
http://localhost/perl/ptest.pl :
http://localhost/perl/ptest.cgi :
http://localhost/perl/ptest.txt :
「ptest.pl」「ptest.cgi」「ptest.txt」の3つともperl-scriptハンドラで処理されます。
( Written by T.buzz.Ikura+ )