|
『結果的には正しい』 ※このトピックの内容と『超電子要塞研究所』とは関係ありません。 自分のホームページが登録されているプロバイダでは、CGIが使える。私はCGI はおろかHTMLも満足にわかっていないため、試行錯誤しながらページ作りに励んで いる。 たとえば今は、掲示板用のCGIを作っているが、そのCGIをサーバーにアップロ ードする前に動作確認が必須だ。 私のパソコン環境はWIN98なので、DOSプロンプトで動くJPerlというプ ログラムで簡易的にCGIの動作確認させているに過ぎない。だがそれでも文法チェッ クや実行出力が見れるので、かなり役に立っている。 最初のうちは、CGIの実行結果をDOS窓の画面に出しているだけだった。だが、 出力内容が多くなると画面がスクロールしてしまうため、実行結果を見るのに不十分に なってきた。 それならばということで、テキストファイルにリダイレクト出力させてみることにし た。リダイレクトというのは、プログラムの入出力の方法を指定することである。通常 は標準の出力として画面に出力(表示)されるが、出力先を指定してやれば、画面の代 わりに任意のファイルに出力することができるのだ。ちなみに、JPerlというプロ グラムに bbs.cgi というスクリプトを実行させ、本来画面表示されるはずの出力を代わ りに log.txt に出力させるには、こうすれば良い。 C:\>jperl.exe bbs.cgi > log.txt UNIXユーザーであれば、リダイレクト出力なんてごく日常的な話なのだろうが、 私はWINDOWSユーザー。まあ普通はやらない。私もまだMS−DOSを使ってい た6〜7年前は日常的にやっていたが、いまではほとんど全くやらなくなった。 だが今はこの方法が役にたちそうだ。やってみよう。 C:\CGI-BIN>jperl.exe bbs.cgi > log.txt よしよし。ファイルの内容が掲示板表示のHTMLっぽくなっている。(当然だ。ブ ラウザにHTMLで掲示板のページを表示するためのCGIなんだから。) いや、待てよ。ということは、出力を log.txt ではなくて、bbs.html にすればその ままHTMLファイルが出来るはずだ。やってみよう。 C:\CGI-BIN>jperl.exe bbs.cgi > bbs.html おお、うまくいくではないか。ほとんど完璧だ。でも残念ながら完璧にはならない。 ヘッダ出力 "Content-type: text/html\n\n" がそのままになってしまう。どうにかなら ないものだろうか。 考え方を変えてみよう。CGIの出力を、ファイルではなくブラウザにしてみたらど うなるだろう。実際、インターネットではブラウザに出力されているのだから、うまく いくかもしれない。 どうやればできるだろうか。よくわからない。とりあえず試してみよう。ブラウザは、 explorer.exe だから、これでうまくいくかもしれない。やってみよう。 C:\CGI-BIN>jperl.exe bbs.cgi > explorer.exe もちろんこれは、explorer.exe に出力された。 いや、カレントディレクトリに explorer.exe として出力された、というべきか。 |
| 散歩 03/Dec/1999 |