[Perl] => [CGI]


この日記のはてなブックマーク数 このエントリーを含むはてなブックマーク

CGIに変数を渡すウェブのインターフェースを作成するのが面倒な場合、シェルの環境変数を設定することでCGIにパラメータを渡すことができます。


手順として、まず環境変数REQUEST_METHODを設定します。(POSTもしくはGET) REQUEST_METHODにGETを指定した場合はQUERY_STRINGにCGIに渡すパラメータを設定します。一方、POSTを設定した場合はCGIに渡すパラメータを記述したファイルを準備し、wcコマンドなどで、文字列の長さを求め、その結果をCONTENT_LENGTHに設定します。


[例: REQUEST_METHODがPOSTの場合]
#REQUEST_METHODにPOSTを指定
export REQUEST_METHOD="POST"


#CGIに渡すパラメータをファイルに記述
[param.txt]
param1=val1


#wcでバイト数をチェック
wc ./param.txt
1 1 12 ./param.txt


#wcの結果から-1した値をCONTENT_LENGTHに設定
export CONTENT_LENGTH="11"


#パラメータを記述したファイルをcatし、CGIプログラムにパイプ
cat ./param.txt | param_check.cgi



広告
Perl/CGI逆引き大全 600の極意 Perl/CGI逆引き大全 600の極意
¥ 2,625 / 売り上げランク: 26647 / 943 ページ

(和訳)ラクダ本で挫折したのですが、最近のWeb2.0的サイト構築で必須となりつつあるので探していたところ、辞書みたいに使えそうだなぁと思い購入しました。
逆引き構成なので機能から追いかける向きもありますが、Indexもシッカリと作られているので正引きも文句なし。
第1刷の2005年から2年経過していますが、BlogやRSS、XML-RPC、AmazonWebサービスも書かれていますので圧巻です。

CGIプログラミング CGIプログラミング
¥ 4,200 / 売り上げランク: 31393 / 496 ページ

CGI+Perlは古いという意見を述べられる方もおみえになります。
WEBサーバに機能をつけた方がよいという方もおみえになります。
何に使うか、どのように使うかだと思います。

個人的には、Perlで書くのは、試験、臨時のツールであって、日常のソフトはお奨めしていません。
ただし、一定程度の蓄積があるものを、急に止めろともいえません。
CGI+Perlのプログラムが動いている限り、保守作業が必要になると思います。

そういうときに、本書は役立つと思います。

最速攻略 CGI/Perl 作り方入門 [CD-ROM付] 最速攻略 CGI/Perl 作り方入門 [CD-ROM付]
¥ 2,394 / 売り上げランク: 59945 / 224 ページ

「Perl」の入門書ではなくて、「Perlでなんかやる時」の入門書。とりあえず言語としての説明は最小限。あるのは実践のみ。
実際に動作させる為の設定の仕方等は良くわかります。
なので、入門としては「丸写しして満足する人」か、さもなくば「ある程度見て意味が分かる人」に向いていると思う。
あと、「実例を前にしてその意味を理解しようと燃え上がる人」なんかには、ぴったりかもしれない。
自分的には目的の結果のソースを前に流れを追えたで結構便利で御座いました。
けど、やっぱり、Perl入門というのとは違うと思うのよ?それを踏まえた上でなら良いかも。