问题
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
来源:https://stackoverflow.com/questions/3139177/how-can-i-run-a-program-in-the-background-non-blocking-with-php