1

当使用 shell_exec() 在我的系统上触发任何命令时,我的日志中出现“未找到”错误,但大厅命令不会发生这种情况。

我可以使用shell_exec( 'dig google.com' );并获得正确的输出,但是当我尝试触发时,shell_exec( '/path/to/my.sh param1 param2' );我最终得到

sh: /path/to/my.sh: not found

我很茫然,我原本打算通过在Debian上巧妙地使用adduser命令来生成一个新用户,但是当PHP尝试触发它时甚至没有找到该命令(与我自己的自定义shell相同的错误脚本文件,所以我有sh: adduser: not found

在测试环境中,apache 会话使用 ITK 以 root 身份运行,并且我还确保我自己的 shell 脚本具有正确的权限并且是可执行的

使用 Zend 2.3.0 和 Suhosin 0.9.32.1 运行 PHP 5.3.3-7+squeeze14

4

1 回答 1

0

只需尝试exec()而不是shell_exec()执行命令。它会工作

于 2012-09-06T07:00:10.177 回答