如何在php中使用后台运行程序(非阻塞)?
问题描述:
我想在php中运行一个shell脚本,但这个shell脚本需要很长时间才能执行(它已经睡眠了),我不希望Web服务器在执行此脚本时阻塞。 我在php中尝试了exec()
和shell_exec()
,但服务器停止运行,直到shell脚本结束!如何在php中使用后台运行程序(非阻塞)?
我想在shell脚本中做fork
本身,但我不知道该怎么做。我只是想让php脚本调用这个shell脚本并继续工作,我没有等待脚本的任何结果。
我试图与&
后台运行的shell脚本仍然得到阻止:( 任何帮助,高度赞赏。
答
我由脚本名称后添加
"> /dev/null 2>/dev/null &"
解决的问题shell_exec()
php函数
谢谢
看看这里:http://*.com/quest离子/ 222414 /异步外壳执行在PHP中 – Mike 2010-06-29 08:59:42
或在这里:[是否有任何替代shell_exec和proc_open在PHP?](http://*.com/questions/2657412/are-there-any-alternatives -to-壳EXEC和进程内开式,PHP) – Gordon 2010-06-29 09:10:23