いとさん、
なるほどそうなのですか。。。なんでしょうね。
中田さん
> なんでしょうね。だいぶてまどるかもしれません。
IEだと起きないのも不思議ですね。さらに迷わせるかもしれませんが、追加情報があります。
この前書いたWin2000はProfessionalでしたが、Win2000Server+Netscape4.7+POST+同一PC でも試してみました。ところがこれだと全く問題なしなのです。ただこのときの PC は Dual CPU ですので少し条件が違うかもしれませんが。
いとさん、
ログをみたところ、ちょっと想定していたのと違っていました。
POSTの場合、リクエスト読み込みからプロセス起動までに5〜6秒、プロセス起動から起動完了までに5〜6秒、プロセス起動完了から応答出力まで20〜40秒でした。GETでは、すべて0〜1秒です。
なんでしょうね。だいぶてまどるかもしれません。
エラー終了については、内部で再起動の時のプロクシのスレッドの終了処理がよくないのかもしれません。調べてみます。
ウィンドウへの切り替え時に全部消えてしまうのは次のバージョンで直します。
中田さん。
ログはメールしました。よろしくお願いします。
オプション変更でエラー終了する件ですが、プロクシサーバ機能をチェックしないと全くエラーは起きないのですが、
チェックするとかなりの頻度でエラーが発生するようになります。
例えば「リモートホストを取得」を常時と取得しないを切り換えるとか、「ホスト名/アドレスを取得」のチェックを
繰り返しオンオフする(一・二度でなくしつこく何度も繰り返す)などで起きました。
もう一つ調べているときに以下の状況になってしまい困ることが起きました。
(1)A HTTPDをトレイ上で起動。(2)トレイ上のアイコンを右クリック -> オプション一般 -> 表示/インデックス ->
動作形態をウィンドウに変更。(3)適用ボタンを押すとトレイからアイコンが消え、さらにOKでオプション設定画面を
閉じるとANHTTPDアイコンが画面から全くなくなってしまい、以後設定変更ができなくなる。
タスクマネージャでプロセスを終了させ、AN HTTPDを再実行させることになります。この状況になるのはWin9x/NT
でも同じです。
えむけいさん
> .batのMIMEタイプをtext/plainにしていないなんて初歩的な問題ではありませんよね?
いえいえ、ズバリその初歩的な問題でした。^^;
えむけいさんの以前の投稿は知っていましたが、別に設定しなくてもNetscapeでは影響なかったし、
IEは普段使っていないので、これまで放っていましたが今になってつけが回ってきたようです。
ということでIEの問題は解決しました。ありがとうございました。
で分かったのですがWin2000+IE+POSTでは起きない問題だったんですね。
中田さん
> Win2000 + Netscape4.7 + POST + 同一PC ということでしょうか。
他のPC(Win2000ではないですが)からのアクセスではcgisample.htmlのPOSTは問題ありません。
trace.log と process.log ですが、Win2000のPCは会社なので後でメールします。
オプションについては変更したのは前に書いた3箇所だけですので、再現テストをやってみます。
いとさん、えむけいさん、
Win2000 + Netscape4.7 + POST + 同一PC ということでしょうか。
POSTでのみということはリクエストのコンテンツ(空行の後のボディ部分)を読み込み標準入力用の一時ファイルに入れるあたりがあやしいと思うのですが、それだと1分過ぎるかどこかをクリックするまでCGIのプロセスは起動されないという症状だと思います。
trace.log と process.log をとってみてもらえないでしょうか(?)。 特にそのログの時刻を見てみたいと思います。
okuyama さんの方は、メールでログを送ってもらいました。
プロクシサーバを2段経由していたので、直接アクセスにしてもらったところ一応大丈夫になりました。
プロセスは終了しているのに接続が切れないという症状でしたから AN HTTPD がプロクシ/キャッシュサーバに適切な応答を出していないものと考えています。もっとも GET では大丈夫だったので、今回の POST の問題もあるのかもしれません。
オプション変更でエラー終了は、同時に複数のオプション変更で起こるのかもしれません。
再現するようでしたらお知らせ下さい。
>他の方は問題ないのかどうかコメントが欲しいところです。
同じです。Win2000+Netscape4.7+POSTでは異常に時間が掛かります。どこかをクリックすると瞬時に終了するのも同じです。
IEは5.5ですが、HTMLでないテストがダウンロードになってしまうという現象は発生しませんでした。.batのMIMEタイプをtext/plainにしていないなんて初歩的な問題ではありませんよね?
中田さん、okuyamaさん。
> おかしいですね。私の方では再現できません。
再現していると言っていいのかどうかは分かりませんが、不思議な現象は私も起きています。
Win98とWin2000の2台のPCで試してみましたが、Win98では全く問題はありませんでした。
Win2000ではAN HTTPDと同じPC上のNetscape 4.7でcgisample.htmlの6つのテストを実行すると、
POST系のテストが3つとも極端に時間がかかります。
単純なテストが瞬時に終了するのに対し、「POSTで上の単純なテストと同じことを行います」は
1分以上かかります(CPU使用率100%状態が続き、時間はかかるが待っていればそのうち終わる)。
最後の2つのPOSTのテストでも同様です。
表示をトレイ上からウィンドウに変えると若干速くなりますが、瞬時ということはありません。
1分待っている途中のどこででも、例えばデスクトップをクリックするでも何でもいいのですが、
何か操作をすると途端に実行が終了し、結果を表示します。これは、みちえるさんのケースと
似ていると思います。
cgisample.htmlの中のMETHODをPOSTではなくGETに変更すれば瞬時に終わります。また、AN HTTPDと
同じPCからアクセスすると遅いのですが、LAN内の他のPCからcgisample.htmlを実行するとこれは
3つのPOSTのテストとも瞬時に終わります。
cgisample.htmlだけが遅いのではなく、それ以外のPOSTでも同様に遅いようです(ただしきちんとは
調べてません)。PerlはActivePerl 613でも522でも遅いのには変わりありませんでした。
以上からWin2000上でPOSTに問題がありそうと絞られたような気もしますが、よくは分かりません。
okuyamaさんもWin2000でしょうか? 他の方は問題ないのかどうかコメントが欲しいところです。
ところで、ブラウザをIE5にするとまた別の変な現象が起きます。「もう少しまともな応答」と
「POSTを使って長い文章のHTML」の二つは瞬時に終了して問題なしなのですが、その他の4つのテストは
ディスクに保存するかどうかを聞いてきて、実行を選んでもブラウザに結果は表示されません。
上記の内容とは直接関係はないのですが、いろいろ調べるためにオプションのリモートホストを取得、
ホスト名/アドレスを取得、トレイ上/タスクバー上/ウィンドウ の設定変更をして適用ボタンを押すと
AN HTTPDがエラー終了してしまい、続いてAN HTTPDを起動しても起動中であるとのメッセージが出て、
結局Windowsを再起動しないとAN HTTPDが使えない状態に何度も陥り、なかなか大変でした。
どの設定を変えるとエラー終了するのかはまでは調べられませんでしたが。
関係はないでしょうが、administrator権限のある一般ユーザでログインして使っています。
なお、AN HTTPDのバージョンは1.28d、Win2000のサービスは使っていません。
以上、何か解決のヒントになればいいのですが。
okuyama さん、
おかしいですね。私の方では再現できません。
ログのオプションでプロセス(process.log)とトレース(trace.log) を取るようにしてから「単純なテスト」と「POSTで上の単純なテスト」の両方をやってみて、2つのログの内容を教えてください。
>okuyamaさん、
>「POSTで上の単純なテスト」の方は読み落としていました。
>が、うまくいかない原因は不明です。「単純なテスト」と同じ /cgi-bin/test.bat を使っているわけなので。それに待機
>中に戻るということは HTTPサーバ側の動作は終わっているわけです。
>Netscape のバージョンは何でしょうか?
Netscapeは4.7[ja]です。
ちなみにIE5.0でも同様で、両方とも右上のロゴがグルグル回りっぱなしです。
okuyamaさん、
「POSTで上の単純なテスト」の方は読み落としていました。
が、うまくいかない原因は不明です。「単純なテスト」と同じ /cgi-bin/test.bat を使っているわけなので。それに待機中に戻るということは HTTPサーバ側の動作は終わっているわけです。
Netscape のバージョンは何でしょうか?
>cgi-binフォルダにある input4.bat の、
>
>echo.
>
>の行の . の後に半角空白が入ってしまっているので、それを削除してください。
>次のバージョンから、修正したものをいれようと思います。
大変忙しそうなのに早速の返事ありがとうございました。
「POSTを使って長い文章を入れてみましょう。テキスト表示です。」
の方は動きました。
ただ、あいかわらず、「単純なテスト」は動くのですが、
「POSTで上の単純なテスト」が動きません。
現象としては、「POSTで上の単純なテスト」ボタンを押すと、
HTTPDが待機中からCGIプロセスを起動・終了し、待機中で動きがなくなり、
ネスケは、接続:ホスト・・・に接続しました。応答を待っています。
の状態がずっと続くです。
お手数ですが、どうしたらよいか教えて下さい。
以下、元メール--------------------------------------------------------
1.28dをインストールし、付属のcgisample.htmlでテストしています。
「単純なテスト」は動くのですが、「POSTで上の単純なテスト」が動きません。
他に、「POSTを使って長い文章を入れてみましょう。テキスト表示です。」は
「ドキュメントにデータが含まれていません。」が出てきます。
「POSTを使って長い文章を入れてみましょう。HTML表示です。」等他は動きます。
どうしたらよいか教えて下さい。
okuyama さん、
cgi-binフォルダにある input4.bat の、
echo.
の行の . の後に半角空白が入ってしまっているので、それを削除してください。
次のバージョンから、修正したものをいれようと思います。
1.28dをインストールし、付属のcgisample.htmlでテストしています。
「単純なテスト」は動くのですが、「POSTで上の単純なテスト」が動きません。
他に、「POSTを使って長い文章を入れてみましょう。テキスト表示です。」は
「ドキュメントにデータが含まれていません。」が出てきます。
「POSTを使って長い文章を入れてみましょう。HTML表示です。」等他は動きます。
どうしたらよいか教えて下さい。