Как вызвать перенаправление произойдет до того, как php-скрипт завершится?

Я хочу запустить php-скрипт, который будет рассылать кучу писем (информационных бюллетеней ), но, поскольку это может занять некоторое время, я хочу, чтобы пользователь быть немедленным перенаправлены на страницу с сообщением типа «Ваши информационные бюллетени поставлены в очередь на отправку».
Пока перенаправления заголовков работают, но они не вызывают перенаправления до тех пор, пока не будут отправлены все электронные письма. Могу ли я закрыть соединение после отправки перенаправления, чтобы браузер немедленно отреагировал на перенаправление? Я пробовал подобные вещи


ob_start();
ignore_user_abort(true);
header( "refresh:1;url=waitforit.php?msg=Newsletters queued up, will send soon.");
header("Connection: close");
header("Content-Length: ". mb_strlen($resp));
echo $resp;
//@ob_end_clean();
ob_end_flush();
flush();

в различных перестановках и комбинациях, но безрезультатно. Я подозреваю, что это невозможно сделать так просто, но прежде чем я начну возиться с заданиями cron или пользовательскими демонами, я подумал, что стоит изучить этот подход. Спасибо

например как болван предлагает ниже, но не повезло

ob_start();
ignore_user_abort(true);
header( "refresh:1;url=mailing_done.php?msg=Newsletters queued for sending.");
header("Connection: close");
header("Content-Length: 0" );
//echo $resp;
ob_end_flush();
flush(); 
9
задан Hast 11 February 2014 в 10:46
поделиться