How can I run a program in the background (non blo

2019-02-15 17:14发布

问题:

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.

回答1:

I solved the problem by adding

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

after the script name to the shell_exec() php function

Thanks