AN HTTPD ゲストブック/コメント集(2001年11月18日02:29)


hollya bxb00017@nifty.com 2001/11/28 23:48

いろいろお手を煩わせてすみませんでしたが、
ようやくhttpdを使うことができました。
お恥ずかしい話、オプションの設定項目ばかりに気をとられて、
サーバアドレスは何なのか、まったく頭にありませんでした。
ファイル名を入れればいいように思っていて・・・
それ以前に、「ローカルサーバ」の意味がわかっていなかったのだと気づきました。

ここに書くのも恥ずかしい話ですが、
私ほどではなくても、あまり知識のない方もここに来られることもあるかと思い、
せめて、ご報告しておこうと思います。
本当にありがとうございました。


中田昭雄 nakata@st.rim.or.jp 2001/11/20 21:21

hollya さん、
それで、perlsearch.cgi を直接URLで指定してやるとちゃんと動作して表示されるのですよね?
そうではなくてフォームで動かすと正常だといううのなら perlsearch.cgi の問題だと思います。
いずれにしてもその HTMLファイルと perlsearch.cgi など関係するファイル一式をメールで送ってください。


hollya bxb00017@nifty.com 2001/11/18 23:18

前投稿が少し変になっていました。
「##### 検索結果出力」の最初の4行が入りませんでした。
書式設定なので無視してください。


hollya 00 2001/11/18 23:14

説明が少し違っていました。すみません。

まず、トップフレームに検索画面に入るボタンがあります。
<a href="../perlsearch.cgi" target="main"><img src="images/header_btn_keyword.gif" width="120" height="35" border="0"></a>

mainフレームには検索窓と「検索」ボタンが出てくるはずですが、ここの時点で、mainフレームに呼び出されるはずのperlsearch.cgiがダウンロードになってしまいます。
perlsearch.cgiのメソッドに関する記述は次のとおりです。
初期設定では
$method = 'POST';

##### フォームデータ受け取り 
if ($ENV{'REQUEST_METHOD'} eq 'POST') {
read(STDIN,$buffer,$ENV{'CONTENT_LENGTH'});
@pairs = split(/&/,$buffer);
}
else {
@pairs = split(/&/,$ENV{'QUERY_STRING'});
}

##### 検索結果出力
print "<TABLE BORDER=\"0\" CELLPADDING=\"0\" CELLSPACING=\"0\" WIDTH=\"100%\">\n";
print "<TR><TD WIDTH=\"20%\" NOWRAP>\n";
print "<FORM METHOD=\"$method\" ACTION=\"$thisfile\">\n";
print "<INPUT TYPE=\"HIDDEN\" NAME=\"action\" VALUE=\"search\">\n";
print "<INPUT NAME=\"key\" VALUE=\"$in{'key'}\" SIZE=\"30\">\n";
print "<INPUT TYPE=\"SUBMIT\" VALUE=\"検索\"> \n";
よろしくお願いします。


中田昭雄 nakata@st.rim.or.jp 2001/11/18 07:35

hollya さん、
サーチボタンのところの form で action をどのように指定しているかをお知らせ下さい。
たとえば、<form method="POST" action="...." ...> の action="...." をどのようにしているか、という意味です。form 以下を全部そのまま書いてもらった方がいいかもしれませんが。


hollya bxb00017@nifty.com 2001/11/18 02:29

こんにちは。hollyaと申します。
AN HTTPDをDLいたしました。
マニュアルや様々なサイトでのやり取り、FAQなど参考に、なんとか、cgiをオフラインで動かすことができるようになりましたが、ひとつ、質問させてください。

自分のパソコンのフォルダに保存したcgiファイルのURLをIEのアドレス欄にに入力すれば、ちゃんと動作します。が、実際のサイト同様、サーチボタンをクリックしてcgiを動作させようとするとダウンロードになってしまいます。
実際のサイトでは、サーチボタンとcgiを表示するフレームは別になっています。
こんな説明でおわかりになるでしょうか。

cgiの動作確認はできたので、充分ではあるのですが、今後のこともあるので、質問いたしました。
ダウンロードになってしまうときの対策として、
バッチファイルのMIME を”text/plain”にしました。
 ・「CGIを実行する」にチェックがない
 ・拡張子「.pl,.cgi」の左にチェックがない
 ・実行プログラム perl の右側の「般」にチェックがない
の3点も確認しました。問題ないです。

ほかにお伝えする必要がある点はありますでしょうか。
基本的なことがわかっていないかもしれませんが、よろしくお願いします。