echo `/usr/bin/PHP $dir/runbg.PHP >> $dir/logbg.txt 2>&1 &`;
我从网上打电话(通过HTTP / Apache).
但是,如果我重新启动Apache(/etc/init.d/apache2 restart),后台进程将被终止.
无论如何我可以让后台继续运行吗?
解决方法:
您可以打开一个PHP’s internal webserver的实例(从PHP 5.4.0开始,CLI SAPI提供了一个内置的Web服务器.)在我的测试中杀死httpd.exe没有影响PHP.exe:8000
<?PHP
//Tested with windows
chdir('../PHP');
//S = Server, listen interface 0.0.0.0 = all : port 8000
//t = Served document root
echo `PHP -S 0.0.0.0:8000 -t C:\\xampp\\htdocs >> C:\\xampp\\htdocs\\logbg.txt 2>&1 &`;
?>
所以可能(未经测试):
echo `/usr/bin/PHP -S 0.0.0.0:8000 -t /srv/www/yoursite.com/public_html >> /srv/www/yoursite.com/public_html/logbg.txt 2>&1 &$dir/runbg.PHP >> $dir/logbg.txt 2>&1 &`;
你不知道如何杀死它:s