Доброго времени суток. Задача — сформировать и отдать ответ браузеру, закрыв с ним соединение, после чего продолжить выполнение скрипта. Вроде бы след.код должен работать:
ob_end_clean();
header("Connection: close\r\n");
header("Content-Encoding: none\r\n");
ignore_user_abort( true ); // optional
ob_start();
echo ('Text user will see');
$size = ob_get_length();
header("Content-Length: $size");
ob_end_flush();
flush();
ob_end_clean();
//do processing here
sleep(10);
echo('Text user will never see');
Локально работает, но на сервере (не вирт.хостинг, есть возможность править конфиги) — нет. Проблема заключается в следующем — связь с браузером не разрывается. Т.е. в приведённом примере пользователю всё так же придётся ждать 10 секунд, но 'Text user will never see' он не увидит. В чём загвоздка? Какие параметры в php.ini следует изменить?
P.S.
local — Ubuntu 11.04, PHP 5.3.5-1ubuntu7.3;
online — Debian, PHP 5.2.6-1+lenny9