WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:Content-typeと『ファイルのダウンロード』ダイアログ

0:[投稿] dailang [2003/04/15 22:28 ][環境:IE6, WinMe -]

Active Perl 5.6.1 と AN HTTPd 1.42h 、Internet Explorer 6 の環境で、
Perlの正規表現をいろいろ試していました。
問題が起こる直前は"test.pl"というファイル名で、(たしか…)
   print "Content-type: text/plain\n\n";
   print $1 while m/(?=<\?php)(.*)(?=\?>)/igc;
というコードを実行しました。
最後の"gc"を削って実行したところ、無限ループに陥ったらしく
ビジー状態が続いたので、AN HTTPd を終了させました。

そしたら、以後このファイルでは Perl が実行されず、
.lzh や .zip などのURIを指定したときに現れる
「ファイルのダウンロード」ダイアログが出るようになってしまったのです。

他の .pl や .cgi は以前と同様に実行されます。が、
test.pl は、名前変更(拡張子は .pl か .cgi)しても、
ディレクトリを移動しても実行されません(例のダイアログが出ます)。
試しに、Content-type を text/plain から text/html に代えたら、
ようやく Perl として実行してくれました。

ただ、出力文字列の中にメタ文字が含まれるため、text/html では
出力結果を毎回「ソースの表示」で確認しなくてはなりませんし、
以後ずっと text/plain が使えないというのも不便ですし、
この機会に Content-type とブラウザの関係も学びたいと思い質問いたしました。
(ちなみに、○.txt は text/plain でしょうけど、普通にブラウザで表示されます)

"Content-type: text/plain" の Perl をダウンロードではなく実行するように
戻すにはどうしたらよいでしょうか。よろしくお願いします。


1:[保留] dailang [2003/04/16 07:39 ]

"Content-type: text/html" で実行後、
"Content-type: text/plain" に修正・保存し、更新すると、
text/plain として実行されました。
# もしかしてはじめからそうだったのカナ^^?
今朝は、とりあえずやりたいことはできています。
お騒がせしました。

回答(必須): 状態:

お名前(必須):

e-mail:

URL:




[戻る]

ChaichanPAPA's World