Reem Reem - 4 months ago 17
Bash Question

How can I run a program in the background (non blocking) with php?

I want to run a shell script in php, but this shell script takes a long time to execute (it has sleep in it), I don't want the web server to block when executing this script.
I tried

exec()
and
shell_exec()
in php but the server stops until the shell script finishes!

I thought of doing
fork
in the shell script itself but I don't know how to do that. I just want the php script to call this shell script and continue working, I'm not waiting any result from the script.

I tried running the shell script in the background with
&
still get blocking :(
Any help is highly appreciated.

Answer

I solved the problem by adding

"> /dev/null 2>/dev/null &"

after the script name to the shell_exec() php function

Thanks

Comments