[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 メーリングリストの案内