絶対URLがHTMLとCGIが異なるプロバイダで「検索フォーム」を設置したい

[上に] [前に] [次に]
えいこ [E-Mail] [HomePage] 2000/06/11(日) 14:39:36
「検索フォーム」についての質問です。
私が利用しているプロバイダ(ぷらら)では、CGIファイルのURL表示がHTMLファイルのURL表示と異なります。(@niftyでも異なるようです)
HTML : http://www2.plala.or.jp/eiko/index.html
CGI : http://cgi12.plala.or.jp/eiko/index.html

「検索フォーム」は“同じサーバー上の指定したディレクトリの下のみ”検索できるそうですが、以上のような場合に対応できるように、改良はできませんでしょうか?

或いは、以上のような場合に対応したスプリクトがあるならば、そちらを教えていただけると嬉しく思います。
「Ninja Search Engine」http://www.cinovi.com/cgitips/searchengine/
を見つけたときには歓んだのですが、サーチエンジンでした・・

よろしくお願いいたします。

sadahiro 2000/06/11(日) 19:16:32
@nifty対応版なら作ったのですが、
http://homepage1.nifty.com/nomenclator/appendix/wwwsrch.txt

この基本的考え方は、HTMLの <base href=""> を利用して、
正しいURLにつながるようにすることです。

えいこ [E-Mail] 2000/06/11(日) 19:31:30
[[解決]]
sadahiroさん、情報ありがとうございました。
@niftyとぷららは似たようなものなので、
たぶん対応できると思います。
散々探してないと落胆していたので、嬉しい限りです。
本当にありがとうございました。

sadahiro [E-Mail] 2000/06/11(日) 21:16:26
ご参考までに、@niftyでは
http://homepage?.nifty.com/username/ でアクセスするもの
の絶対パスは   /homepage/  に、
http://hpcgi?.nifty.com/username/ でアクセスするもの
の絶対パスは   /cgi-bin/ になっています。
それで、/cgi-bin/ にwwwsrch.cgiをアップロードし、
そこから /homepage/ のファイルを検索するようにしています。

えいこ [E-Mail] 2000/06/11(日) 22:05:26
sadahiroさんのアドバイスを読んで、
@niftyとぷららのシステムが違うことに気付きました。
つまり、sadahiroさんのスプリクトは設置できないということになります。
ショックです・・・
すごく設置が簡単そうだと歓んだのに。

sadahiro 2000/06/12(月) 19:12:23
とりあえず、少し手直ししてみました。

$base_url = 'http://www2.plala.or.jp/eiko/index.html';
$cgi_url = 'http://cgi12.plala.or.jp/eiko/wwwsrch.cgi';
$return_url = 'http://www2.plala.or.jp/eiko/index.html';

のほかに、
$homedir = '/homepage';
を設定するようにしました。
もしCGIファイル(wwwsrch.cgi)を'http://www2.plala.or.jp/eiko/index.html'の
ファイルと同じディレクトリ(いわゆるカレント)におけるなら、
$homedir = '.'; とします。
あるいは $homedir = '/home'; ですか?
(プララの案内をみてもちょっと字がつぶれていてはっきりしない)

最悪でも
$homedir = '/'; # ルートディレクトリ、つまり一番上のディレクトリ
にしてみましょう(ルートディレクトリとしてもダメならダメでしょう)。
よろしければお試しください。

sadahiro 2000/06/12(月) 20:32:57
上ので「ルートディレクトリ」云々はバグっていました (^^;
せっかくなので
$homedir = '/';
と指定すると、本来 $homedir = '' に指定すべきパスがわかる
(多分、またバグっていなければ)ようにしました。

http://homepage1.nifty.com/nomenclator/appendix/wwwsrch.txt
細かいことは↑の最初の方からコメントとして書いておきましたので、
よろしければお試しください。

[上に] [前に] [次に]