如何使用 sudo
从 php
运行 bash
脚本
index.php
:
<?php
$arg;
exec("sudo /var/www/script", $arg);
?>
脚本:
!#/bin/bash
echo YOUR ARG IS $1;
sudoers www-data ALL=NOPASSWD /var/www/my
chmod 755 /var/www/my
最佳答案
首先,你不能像那样直接sudo
它。所以你必须更改 sudoers 文件中的一些配置。
在控制台中运行sudo visudo
,在文件末尾添加以下行
nobody ALL = NOPASSWD: /var/www/script
附注:像这样使用您的脚本存在安全风险,有时会在很大程度上破坏数据安全,因此我的建议是不要那样调用您的脚本。
关于php - 从 php exec() 运行 bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27647394/