PHP - exec sudo命令什么都不返回

时间:2016-10-13 22:54:19

标签: php ubuntu exec

关于这个话题有很多问题,但我的情况很奇怪。

我正在尝试在php中打印出exec("sudo -u root whoami")。但它什么也没有回报。

我通过%www-data ALL=(ALL:ALL) ALL添加了sudo visudo但是没有运气,没有错误,只是没有打印任何内容。

有什么建议吗?

提前致谢

1 个答案:

答案 0 :(得分:1)

您的网络服务器如何输入sudo的密码?

您的配置允许webserver-user运行服务器上的所有命令。但这需要用户输入他们的密码。和网络服务器

  1. 不能以交互方式做到这一点
  2. 甚至没有apassword
  3. 所以如果你想要做你想做的事情(让流程运行PHP root访问机器是非常糟糕的主意)你应该添加这个到你的sudo-config:

    %www-data     ALL = NOPASSWD: /usr/bin/whoami
    

    允许组www-data以root 运行whoami而不用执行密码提示