当使用 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