namazu-ml(avocado)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Request for Win32 user (Re: namazu-112-proto-9.tar.gz (Re: namazu-112-proto-8.tar.gz)
- From: Kaz SHiMZ <kshimz@xxxxxxxxx>
- Date: Mon, 30 Mar 1998 20:43:14 +0900
- X-ml-name: namazu
- X-mail-count: 00443
清水@住友林業です。
# 自己フォローですが、最後に Win32 な方にお願いがあります。
# なにとぞ、ご協力をお願いします m(__)m
私は書きました。
> ただ、ICS は cgi / SSI の出力結果を parse する際の動作に bug があり
> namazu.cgi で検索結果が 0 件の際に、ブラウザにデータを返さないので
> (だんまりになる)困ってます。サーバ側のログにはエラーは全く出てない
> ので、早急に Apache v1.2.5 for OS/2 を試したいのですが、時間と環境が
> それを許さない...
また、OS/2 ICS httpd だと、上記の不具合(検索結果が 0 件のときにブラ
ウザにデータが返らない)の他に、cgi の出力の最後尾の一部のデータがブ
ラウザに返らない、という現象があります。だいたい、検索結果が 20 件以
上の場合に表示される、
Page: [1] [2] .... [20] ....
の行の途中までしか表示されないことがあります。これは頻繁に再現します
が、100% 再現するわけでもないのです。で、このケースでは、次の画面(
同じ検索結果の次のページや、別の検索結果)の最上部に、前の画面の送ら
れなかったデータが表示される(ブラウザに送信される)という現象が起こ
っています。
# これは、ICS の parse の bug に起因すると認識しています。
# nph な cgi として動かせば、ブラウザにまともに返ることは確認済み。
閑話休題。
さっき、namazu-1115 の srnmz.c を見ていたら、cgi での出力に
> static char *MIME_HEADER = "Content-type: text/html\r\n\r\n";
と改行に CR+LF を使っている行が1つだけあります。
それ以外は
> static char *HIT2 = " 個の項目が見つかりました。</STRONG></P>¥n¥n";
などと、改行が LF だけになってます。
たしか、httpd では改行は CR + LF とすることになってますよね?
ちなみに、OS/2 の emx gcc では、¥n を CR+LF に変換してくれるので、
ソース中で ¥n だけにしても、httpd に渡る際には CR+LF になっています。
\r はそのまま、CR になります。
# つまり、ソースに ¥r¥n と書かれていると、CR CR LF になっちまう :-(
## \n を CR+LF に変換させないオプションもあるのですが、いずれにせよ
## 改行が ¥n か ¥r¥n に統一されてないと、出力がヘンになる。
で、srnmz.c で cgi に出力される際の ¥r¥n と ¥n の混在をやめるべく。
> static char *MIME_HEADER = "Content-type: text/html\r\n\r\n";
の行を、
> static char *MIME_HEADER = "Content-type: text/html\n\n";
と修正しただけで、上記の ICS の bug に起因する不具合は、とりあえず回
避できました。
で、質問と調査希望なのですが、
[質問]
1. Solaris とか Linux 上の httpd (Apache ?) では、cgi の出力に CR+LF
と LF が混在していても特に問題ないのでしょうか?
2. OS/2 の ICS と同様の bug が出る httpd はないでしょうか?
[希望]
OS/2 (および Win32) の場合、
> static char *MIME_HEADER = "Content-type: text/html\r\n\r\n";
は
> static char *MIME_HEADER = "Content-type: text/html\n\n";
の方が望ましい(¥n だけでも出力コードは CR+LF になるハズ)と思うので、
Win32 で gcc の環境がある方は、これで不具合がでるかどうか試していただ
けないでしょうか。
よろしくお願いします。
end
--
住友林業株式会社 情報システム部 清水 和佳
TEL: +81-3-5322-6672 FAX: +81-3-5322-6658 Niftyserve: XLW01034
e-mail: <kshimz@xxxxxxxxx>