0

我有一个带有按钮的网页,当我单击该按钮时,我希望它可以将数据发布到一个 php 文件中 - 这一点我很好。问题是我希望 PHP 文件在服务器上启动一个与 httpd 无关的进程,所以如果我关闭网页,PHP 脚本仍将运行到最后(它是一个长时间运行的脚本)。

长时间运行的脚本会执行需要一段时间的各种任务,它将进度写入 .json 文件。我在网页上设置了我的 JavaScript 以每秒读取进度并更新进度条等...我想要它这样即使我关闭网页脚本仍然会运行到最后,这样我就可以来随时返回并检查进度等。

我一直在阅读,发现大多数人都说要使用 exec 但这对我不起作用(尽管我正在 wamp 下的 windows 上进行测试,也许这就是为什么?)

有人告诉我,我应该使用在服务器上运行的管理器进程(而不是通过 apache)或使用 POSIX 信号。我不确定其中任何一个,所以任何帮助都将不胜感激,无论是解释、代码还是好文章的链接

如果可能的话,我希望保持脚本设置,所以我只需要弄清楚如何在 httpd 上启动后台进程。

提前谢谢大家了

4

1 回答 1

0

我在 PHP 网站上的评论中发现了这个建议。

pclose(popen("start /B ". $cmd, "r"));
于 2012-12-24T20:22:47.923 回答