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>