Re[2]: Проблема с передачей header'а Content-Length
Igor Savchenko
dicsydel at gmail.com
Wed Jun 27 15:11:59 MSD 2007
Hello Driantsov,
Wednesday, June 27, 2007, 1:47:35 PM, you wrote:
> On Wed, 27 Jun 2007 11:04:44 +0300
> AlexeyK <itsmegawtf at gmail.com> wrote:
>> 2007/6/27, Driantsov Alexander <bender at cdev.ru>:
>> > При использовании вот такого PHP кода:
>> > <?
>> > $filepath="/path/to/file.txt";
>> > header("Content-Type: application/csv");
>> > header("Content-Disposition: attachment; filename=\"bad_file.IFF\"");
>> > header("Content-Length: ".filesize($filepath));
>> >
>> > readfile($filepath);
>> > exit;
>> > ?>
>> >
>> > и обработке в Nginx+PHP-FastCGI файл не передается. А именно, если Nginx передает заголовок "Content-Length", то браузер, somewhy, распознает его не верне и файл висит в download'е вечно. Если в этом же коде закоментировать строку:
>> >
>> > header("Content-Length: ".filesize($filepath));
>> >
>> > Файл передается нормально.
>> >
>> > --
>> > Sincerely yours,
>> > Driantsov Alexander,
>> > Technical Support Engineer
>> >
>> > Qualiteam Software
>> > Glavpochtamt, p/o box 5152. [web site] http://www.x-cart.com/
>> > 432072 Ulyanovsk, Russia [ phone ] +7-(8422)-429037 (9:00-18:00 GMT +4)
>> >
>> >
>>
>> Какой браузер?
> Например в слудеющих:
> 1. Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.8.1.4) Gecko/20070603 Firefox/2.0.0.4
> Проблема воспроизводиться следющим образом:
> 1.1. Заходим на тестовый скрипт: http://x-shops.com/file_upload.php
> 1.2. В появившемся окне с предложением выбрать директорию для
> сохранения выбираем директорию, в моем случае это ~/www/temp/.
> 1.3. Смотрим эту директорию:
> [~/www/temp]$ ls -al
> -rw------- 1 * * 0 27 июн 14:29 bad_file.IFF
> -rw------- 1 * * 911 27 июн 14:29 bad_file.IFF.part
> 2. MSIE 6.0 (версия 6.0.3790.3959, Windows Server 2003 Standard Edition)
> 2.1. Заходим на тестовый скрипт: http://x-shops.com/file_upload.php
> 2.2. Ждем-ждем и ждем, приглашения сохранить файл так и не появляется.
> 3. Netscape 7.0 под Windows Server 2003 Standard Edition
> 3.1. Заходим на тестовый скрипт: http://x-shops.com/file_upload.php
> 3.2. Выбираем куда созранить resulting файл.
> 3.3. Видим диалог "Saving", Time Left: Unknown
>> Файл снаружи не меняется? clearstatcache() ситуацию не улучшает?
> Нет, файл не меняется, никаких multiple operations нету.
Включи отладочный лог и посмотри что куда передается и на каком этапе
теряется..
---------------------------------
Igor V. Savchenko
http://webta.net
mailto: igor at webta.net
ICQ: 86915046
More information about the nginx-ru
mailing list