php exec() 中的 sudo 返回退出代码 1

php exec() 中的 sudo 返回退出代码 1

问题描述:

我想在 php 脚本中运行sudo whoami"命令.

I want to run "sudo whoami" command in php script.

我已将下一行添加到/etc/sudoers

I have added next line into /etc/sudoers

apache ALL=(ALL) NOPASSWD:/usr/bin/whoami

apache ALL=(ALL) NOPASSWD:/usr/bin/whoami

并执行脚本

$result = exec("sudo whoami", $output, $return_var);

$result 为空.$return_var == 1

$result is empty. $return_var == 1

终端命令

su -s /bin/bash apache -c "sudo whoami"

返回root".

PHP 5.6.38

CentOS 7.5.1804

CentOS 7.5.1804

通过在 httpd.conf 中添加下一行解决

Resolved by adding next lines into httpd.conf

<IfModule mpm_itk_module>
  LimitUIDRange 0 6000
  LimitGIDRange 0 6000
</IfModule>