Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.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 警告:exec():无法分叉_Php_Security_Windows Server 2012_Windows64 - Fatal编程技术网

Php 警告:exec():无法分叉

Php 警告:exec():无法分叉,php,security,windows-server-2012,windows64,Php,Security,Windows Server 2012,Windows64,好的,有问题。我的PHP脚本除了一行之外都可以正常工作。 此行尝试使用exec()执行外部命令 我得到: 警告:exec():无法分叉 我试着寻找答案。有几个网站说我必须在cmd.exe上设置权限。我不确定是在system32还是在syswow64中这样做 也不确定要添加什么用户ISUR或从get\u current\u user()获取的用户(lime) Windows不允许我将任何用户添加到安全列表(右键单击文件、属性、安全、编辑) 它也不允许我使用icacls cmd.exe/grant

好的,有问题。我的PHP脚本除了一行之外都可以正常工作。
此行尝试使用
exec()
执行外部命令

我得到:

警告:exec():无法分叉

我试着寻找答案。有几个网站说我必须在
cmd.exe
上设置权限。我不确定是在
system32
还是在
syswow64
中这样做

也不确定要添加什么用户
ISUR
或从
get\u current\u user()获取的用户(
lime

Windows不允许我将任何用户添加到安全列表(右键单击文件、属性、安全、编辑)

它也不允许我使用
icacls cmd.exe/grant IUSR:F
(在system32中拒绝访问)(句柄在syswow64中无效)

我已经将完全访问权限(
ISUR
SYSTEM
SERVICE
NETWORK
SERVICE
lame
所有人
,以及
IIS\u-ISURS
)添加到将创建文件的文件夹中。我意识到这太过分了,所以我必须减少这一点

我必须在Windows7x64(开发机器)和WindowsServer2012(生产)中都这样做

我发现很多例子要么是针对以前的系统,要么是不够详细


有人能帮我吗?我需要让脚本正常工作。谢谢你没有提供足够的信息来回答你的问题

如果您的PHP脚本将在Windows操作系统中执行,也许您可以查看,而不是exec()。COM功能将使您能够更好地控制自己的工作(也许是办公自动化?)

COM比exec()强大得多,因为它允许您控制生成的应用程序窗口本身(如果有)。例如,可以使用不可见窗口或最小化窗口启动新进程

可以在中找到一些示例

基本上,您可以执行以下操作来运行应用程序:

$shell = new COM("WScript.Shell");
$shell->Run("notepad.exe");
$shell = null;
用谷歌搜索“phpwscript.Shell”将在这个主题上产生很多结果

编辑:此外,您还需要将其添加到IIS web.config中:

<identity impersonate="true" userName="youruser" password="yourpass"/>`
`

这将设置IIS在启动进程时模拟的用户。

我正在使用命令行应用程序pdftk将PDF&FDF合并为新的PDF。我将在谷歌上搜索php WScript.Shell,看看它是否能满足我的需要。作为测试,我尝试打开计算器。我什么都没有。没有计算器&没有错误。你的PHP是在安全模式下运行吗?不。它不是在安全模式下。在我的答案中添加了一个解决方案