【发布时间】:2012-01-20 20:58:47
【问题描述】:
在 shell 中,我执行简单的 whoami,然后得到 geoff,这很好,因为我就是这样。
在一个 php 文件中,我有 shell_exec('whoami');我没有得到任何人。
在我看来,这可能是解释我最初的问题的不同之处:imagemagick 在 shell 中工作,但在 php 脚本中不起作用。
现在通过这个网站,我认为这意味着我的 apache xampp 分配了一个不同的用户名,而不是使用我通常的用户名。
我曾尝试通过 sudo 在 php 中更改我的登录名,但目前这对我不起作用。
谁能帮忙?
【问题讨论】:
-
你能贴出不起作用的代码,以及你得到的实际结果吗?从 shell 调用 imagemagick 时,您可能需要指定它的路径,并确保它尝试输出到的任何目录都可以由用户nobody 写入。
-
用户
nobody可能没有$PATH或不完整的$PATH。从 PHP 调用 ImageMagick 二进制文件时指定完整路径。 -
shell_exec('/usr/local/bin/convert -verbose /Users/geoff/Sites/Test/test.pdf /Users/geoff/Sites/Test/result.png 2>&1 1> /dev/null');你提到输出目录,我可以选择这个吗?澄清一下,我已经包含了完整的路径,但是没有用。
标签: php shell imagemagick