Nginx+PHP-FCGI Функция flush() не работает корректно

Argos nginx-forum на nginx.us
Вт Фев 8 16:45:37 MSK 2011


Здравствуйте. У меня стоит nginx + php-fcgi. У
меня есть большой php скрипт который
выполняется относительно долго (может
и 5 минут). Задача состоит в том что бы в
течении этих 5 минут построчно выводить
результаты, а не дожидаться когда php
скрипт полностью отработает. Убив
около суток на поиски подходящего
решения набрел на функцию flush();
Вот пример дабы убедиться что функция
работает
[code]
<?php
echo str_repeat(" ",300); // выводим пробелы что бы
браузеры типо ie работали как надо
for ($i=0;$i<=5;$i++)
{
echo "1";
flush();
sleep(1);
}
?>
[/code]

Данный пример [b]не работает[/b] как надо
на связке nginx+php-fcgi, но работает на
локалке (denwer). Почитав дальше инфу -
промелькнула мысль что дело в nginx`e.
Пишут что он вообще не способен
отдавать кусками результаты
выполнения php скрипта. Хотел бы
уточнить так ли это? И если не так то
пример конфигурации что бы можно было
работать с функцией flush(). 
P.S Nginx v 0.8.54
Заранее спасибо.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,173191,173191#msg-173191




Подробная информация о списке рассылки nginx-ru