【发布时间】:2010-12-20 01:01:27
【问题描述】:
我想在 ubuntu 服务器上使用 php 的 exec() 函数。 问题是,我总是收到一个错误,即找不到该命令。例如使用
exec("echo 123");
打印
sh: /echo: 未找到
对我来说,当我想使用 bash 时,看起来 php 正在使用 sh shell。 我尝试在 /etc/passwd 中更改 www-data 的 shell,但也没有帮助。
有没有人知道问题可能出在哪里,或者我可以如何更改 php 的 ubuntu 用户的 shell。
谢谢,蒂莫
[编辑]
也许这会有所帮助:
我从 ssh 调用一个 bash 脚本作为 timo,这个脚本调用一个使用 exec 的 php 脚本。我知道,这听起来很奇怪,但它是更大开发环境的一部分……
关键是,我不确定执行 exec 中的脚本是由哪个用户执行的。
[编辑]
到现在为止,我发现肯定涉及另一个权利问题。 即使我尝试从 exec 中调用 bash 脚本 test.sh(通过它的完整路径!),php test.php 也会说。
sh: /test.sh: 未找到
【问题讨论】:
标签: php bash shell ubuntu exec