【发布时间】:2014-11-17 17:53:06
【问题描述】:
我正在使用 Archlinux,我想运行以下脚本(实际上是最后一行):
<?php
var_dump(get_current_user());
var_dump(exec("whoami"));
var_dump(exec("sudo echo 1 > /sys/class/gpio/gpio44/value"));
该脚本具有以下权限(我在最后一行尝试了使用和不使用 sudo)
-rwxr-xr-x 1 http http 126 Nov 17 17:24 turn_on.php
并且http 被添加到\etc\sudoers 并具有ALL 权限
http ALL=(ALL) ALL
在浏览器中打开turn_on.php脚本的结果是:
string(4) "http" string(4) "http" string(0) ""
脚本没有做它应该做的事情(最后一行),并且在 apache 日志中,每次我重新加载浏览器时都会得到:
sh: /sys/class/gpio/gpio44/value: Permission denied
这是我第一次处理我想做的事情,我正在考虑制作更多“PHP Web 服务 API 风格”的东西。任何建议都非常感谢。 干杯。-
【问题讨论】:
标签: php apache shell exec archlinux