[PHP-users 28495] Re: header や readfileを実行するとそのページが2〜3回実行される
FELLOW 大山
ohyama @ fellow-inc.co.jp
2006年 2月 20日 (月) 16:30:06 JST
藤本様
ありがとうございます。
>HTTPステータスは、全て200でしょうか?
ログを確認したところ全て200にはなっていました。
ただ1つ判った事があります。
1回のアクセスで以下のようにログが3件出力されていました。
1件目
2006-02-20 07:24:36 192.168.0.99 GET /php/sapi/tts.php text=電話:
09012345678&sex=man&speed=6&volume=6 80 - 192.168.0.90
Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322)
200 0 0
2件目
2006-02-20 07:24:36 192.168.0.99 GET /php/sapi/tts.php text=電話:
09012345678&sex=man&speed=6&volume=6 80 - 192.168.0.90
Windows-Media-Player/10.00.00.3802 200 0 0
3件目
2006-02-20 07:24:36 192.168.0.99 GET /php/sapi/tts.php text=電話:
09012345678&sex=man&speed=6&volume=6 80 - 192.168.0.90
Mozilla/4.0+(compatible;+MSIE+6.0;+Windows+NT+5.1;+SV1;+.NET+CLR+1.1.4322)
200 0 0
クライアントのアプリケーションが1,3件目がIE6.0に対し
2件目がWindows-Media-Playerになっていました。
ダウンロードしたファイルはそのままメディアプレイヤーで再生されているのですが
それからもアクセスされているようです。。。
以上、取りあえず分かった事をご報告します。
宜しくお願い致します。
>藤本です。
>
>たしかに難解な現象ですねー。2〜3回ってところも不思議です。
>
>IISのログをチェックしましたか?
>現象発生時には複数行のログが出ているはずですが、それらの
>HTTPステータスは、全て200でしょうか?
>これが、206 Partial Contentとかになってたりしないですか?
>
>実際、出力されるコンテンツがWAVストリームの場合、クライアント側で
>勝手に切り分けて、Rangeリクエストを何度も送ってくる可能性もあります。
>
>もし原因がそうだとすると、
>header("HTTP/1.0 200 OK");
>あるいは
>header("HTTP/1.0 201 Created");
>を出力の先頭につけて、回避できるかもしれないですね。
>
>以上
PHP-users メーリングリストの案内