Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中使用nohup或setsid作为快速CGI_Php_Shell_Fork_Command Line Interface - Fatal编程技术网

在PHP中使用nohup或setsid作为快速CGI

在PHP中使用nohup或setsid作为快速CGI,php,shell,fork,command-line-interface,Php,Shell,Fork,Command Line Interface,我试图对传入的AJAX请求进行一个可能很长的后台处理,但是通过shell_exec使用nohup或setsid会导致服务器崩溃。我们使用suexec和FastCGI,当它爆炸时,整个服务器都陷入了爬行状态 shell_exec("nohup /home/me/myscript.php"); 该脚本现在不做任何冗长的事情,只输出到一个不存在的文件(这永远不会发生,因为它先爆炸) 谢谢 我一直在上看到警告(尽管您使用的是nohup,但我知道ẁ) 作为警告,从Web服务器进程分叉不是一种安全的方式。

我试图对传入的AJAX请求进行一个可能很长的后台处理,但是通过
shell_exec
使用
nohup
setsid
会导致服务器崩溃。我们使用
suexec
和FastCGI,当它爆炸时,整个服务器都陷入了爬行状态

shell_exec("nohup /home/me/myscript.php");
该脚本现在不做任何冗长的事情,只输出到一个不存在的文件(这永远不会发生,因为它先爆炸)


谢谢

我一直在上看到警告(尽管您使用的是
nohup
,但我知道ẁ) 作为警告,从Web服务器进程分叉不是一种安全的方式。如果后台进程需要启动,我将创建一个守护进程/始终运行的作业进程,该进程可以接收此类请求(与Web服务器无关)你当然应该问问serverfault,那里有更多的专家。但是有一件事:作为预防措施,你应该在脚本(
nohup/usr/bin/php/home//script.php
)之前先去看看php解释器。这种UTIL在shebang脚本上不起作用。