我可以在后台运行.php文件吗?

时间:2012-05-24 07:18:14

标签: php apache process

我在那里,

在用户注册时,我从第三方服务导入了大量信息,

但问题是该页面需要加载很多,有没有办法在后台运行这个“导入”过程? (因此用户无需等待太多时间查看页面,可能在下次刷新时将完成导入)

感谢

2 个答案:

答案 0 :(得分:1)

您需要将注册过程分解为两个步骤:一个轻量级页面加载而不等待导入完成,另一个脚本执行繁重的工作。第一个将使用AJAX触发第二个。最终结果将是“正在处理您的注册”页面,该页面在工作脚本完成时会相应地更新。

您应该小心在工作人员脚本的开头调用ignore_user_abort,这样如果用户在等待页面上关闭浏览器窗口,注册过程就不会中止。

答案 1 :(得分:0)

您必须设置一个cron作业(如果您正在运行Linux),该作业执行curl命令以访问PHP脚本(外部,例如' curl http://domain.com/php/something.php')或仅执行php命令指向内部文件。

您可以创建一个每分钟执行一次的调度程序(这是cron作业支持的最短执行时间)并执行" block"你的工作当然,您必须将PHP设置为跳过默认使用的30秒执行限制。