我的Windows服务器的Windows PHP的exec /用了shell_exec总是phantomjs返回null
上运行PHP 5.4.9我已经试过所有正在运行的脚本在PHP(EXEC,了shell_exec,系统,proc_open,中继)命令。所有似乎都返回空或空。
我添加了phantomjs作为PATH变量。
并运行在命令提示符下phantomjs --version
,并返回1.8.2
虽然当我尝试运行
$return = exec("phantomjs --version")
或
$return = shell_exec("phantomjs --version", $output)
$return
总是空和$output
是空的。
我确信IUSR和IIS_IUSRS用户必须运行phantomjs.exe
安全模式允许在php.ini
也不起作用,我试图运行exec('ls') && exec('ipconfig /all')
,以及那些将数据输出我期待。
我不知道还有什么可以尝试的。
你肯定phantomjs在壳中的路径exec()'d服务器?只是因为它在您的帐户路径中,因此可能不在IUSR_IIS帐户的路径中。 – 2013-03-07 18:06:08
尝试以下操作并查看是否填充$ out或$ ret。 $ out将是一个数组。 exec('phantomjs --version'。'2>&1',$ out,$ ret); – Gavin 2013-03-07 18:54:54
路径位于系统变量 - >路径变量中。 – 2013-03-08 16:05:21