如何在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();
如果你想连续运行脚本并且仍然希望显示一些输出,为什么不使用ajax请求到服务器,它可以排队邮件并仍让用户继续浏览该页面.

如果你不想用这个;相反,你可以使用,
即使用户将被重定向到show_usermessage.PHP页面,脚本也会运行后台

<?PHP
    //Redirect to another file that shows that mail queued
    header("Location: show_usermessage.PHP");

    //Erase the output buffer
    ob_end_clean();

    //Tell the browser that the connection's closed
    header("Connection: close");

    //Ignore the user's abort (which we caused with the redirect).
    ignore_user_abort(true);
    //Extend time limit to 30 minutes
    set_time_limit(1800);
    //Extend memory limit to 10MB
    ini_set("memory_limit","10M");
    //Start output buffering again
    ob_start();

    //Tell the browser we're serIoUs... there's really
    //nothing else to receive from this page.
    header("Content-Length: 0");

    //Send the output buffer and turn output buffering off.
    ob_end_flush();
    flush();
    //Close the session.
    session_write_close();


    //Do some of your work,like the queue can be ran here,//.......
    //.......
?>

相关文章

Hessian开源的远程通讯,采用二进制 RPC的协议,基于 HTTP 传输。可以实现PHP调用Java,Python,C#等多语...
初识Mongodb的一些总结,在Mac Os X下真实搭建mongodb环境,以及分享个Mongodb管理工具,学习期间一些总结...
边看边操作,这样才能记得牢,实践是检验真理的唯一标准.光看不练假把式,光练不看傻把式,边看边练真把式....
在php中,结果输出一共有两种方式:echo和print,下面将对两种方式做一个比较。 echo与print的区别: (...
在安装好wampServer后,一直没有使用phpMyAdmin,今天用了一下,phpMyAdmin显示错误:The mbstring exte...
变量是用于存储数据的容器,与代数相似,可以给变量赋予某个确定的值(例如:$x=3)或者是赋予其它的变...