[PHP-users 35497] Re: ファイルダウンロードの不具合について

goungoun gounx2 @ gmail.com
2011年 2月 20日 (日) 20:41:52 JST


はじめまして。

> (PHPとは関係ないことが原因かもしれませんが。。。)

そこを切り分けるのが先なのではないでしょうか?

例えば、
単に大きなファイル(画像でも動画でもなんでもいいですが)
をおいてみて、それをダウンロードしたときに同様の現象が
発生するなら、PHPが原因ではありませんよね?



On Sun, 20 Feb 2011 13:57:36 +0900
"kimiya.kato" <kimiya.kato @ atika.co.jp> wrote:

> お世話になっております。
> 
> PHP5で実装したファイルダウンロードプログラムで不具合が発生しました。
> 
> DMZに配置されているWebサーバに対して、LAN側より外部Proxy経由でアクセスし、
> ダウンロードを試みたところ不具合が発生しました。
> LAN側にある2台のクライアントよりダウンロードを行いましたが、1台目のクライアント
> がダウンロード中の状態で、2台目のクライアントでダウンロードを開始すると、1台目
> のダウンロードが途中で止まってしまう現象が発生しました。
> 
> 
> PHPプログラムは、SSLアクセス(https://xxx.xxx.xxx.xxx/xxxxx)により動かしています。
> PHPプログラム側で出力しているログから、以下のことが分かっています。
> ・LAN側からアクセスした場合は、すべてのクライアントのIPアドレスが、同じIPアドレス
>  に変換されている。(NAT変換されていると思われます。)
> ・セッションIDは、クライアントごとに違う。(セッションIDの変換はされていない。)
> 
> なお、Webサーバは自社にて、指定されているIPアドレスにて構築しましたが、ルータ、
> ファイアウォールなどのネットワーク機器、LAN内のPCなど、その他のことについては、
> 一切タッチしておらず具体的なことは分かっていません。
> 
> 何が原因で、上記のような現象となっているのか、ご教示いただきたく書き込みをさせて
> いただきました。
> (PHPとは関係ないことが原因かもしれませんが。。。)
> 
> WAN側から2台のクライアントよりダウンロードを行った場合は、上記のような現象は発生
> せず、2台とも正常にダウンロードできます。
> なお、WAN側からダウンロードを行った場合は、Proxyは使用していません。
> 
> 
> よろしくお願いいたします。
> 
> 【Webサーバ】
> OS:CentOS 5.5
> Apache:2.2.16
> PHP:5.2.14
> 
> 【PHPダウンロードプログラム】
> header("Cache-Control: public");
> header("Pragma: public");
> header("Content-Disposition: attachment; filename=\"". mb_convert_encoding( basename($path_file),"SJIS-win","UTF-8")."\"");
> header("Content-Length: ".$content_length);
> header("Content-Type: application/octet-stream");
> if (!readfile($path_file)) {
>     die("Cannot read the file(".$path_file.")");
> }
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://oldwww.php.gr.jp/php/novice.php3

-- 
goungoun <gounx2 @ gmail.com>
http://goungoun.dip.jp/app/



PHP-users メーリングリストの案内