我有从 Raspberry 播放音乐并使用脚本 gpio.sh 打开 LED 的网络服务器。我正在使用 mpd、mpc 和 gpio。
我的 /var/www/index.php :
<html><body><?php
echo exec('whoami');
if(isset($_POST['button1']))
{
shell_exec('mpc play')
shell_exec('/bin/bash /var/www/gpio.sh');
}
?>
<form method="post">
<p align=center>
OUTPUT (AUDIO) => <button name="button1">PLAY</button>
</p>
</form>
</body></html>
在终端中,我可以成功运行 /bin/bash /var/www/gpio.sh 并且 LED 亮起。从网络服务器'mpc play' WORKS 并且可以播放一首歌曲但它不能运行那个 gpio.sh 。index.php 的所有者是 www-data
-rwx------ 1 www-data www-data 1262 Dec 8 10:45 gpio.sh
-rwx------ 1 www-data www-data 272 Dec 9 09:39 index.php
我应该怎么办 ?当我将 index.php 或 gpio.sh 的所有者更改为 root 时,php 无法执行。我的 index.php 错了吗?我无法从 php 执行 .sh。请帮忙。