【发布时间】:2015-04-22 18:39:50
【问题描述】:
我正在尝试使用shell_exec 通过 PHP 执行命令。 PHP 文件由 Apache 托管在我的 Ubuntu 服务器上。
当我运行这个时:
echo shell_exec("ps ax | grep nginx");
然后我可以查看数据。但是当我运行另一个命令时,例如:
echo shell_exec("cat /usr/local/nginx/config/nginx.config");
然后它根本没有显示任何东西。但是当我复制该命令并将其粘贴到我的终端时,它执行得很好。
我的 Apache 服务器以用户 www-data 运行。所以我编辑了sudoers 并添加了这一行:
www-data ALL=(ALL:ALL) ALL
我知道这是一个安全风险,但我想确保(目前)www-data 能够执行所有命令。但是,由于某种原因,我仍然无法使用我的 PHP 脚本执行所有命令。
有人知道该怎么做吗?
【问题讨论】:
标签: php apache shell-exec