从php exec()运行bash脚本

时间:2014-12-25 12:57:55

标签: php linux bash exec iptables

如何使用bash

php运行sudo脚本

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 

1 个答案:

答案 0 :(得分:1)

首先,你不能直接sudo这样。所以你必须改变sudoers文件中的一些配置。

在控制台中运行sudo visudo,在文件末尾添加以下行

nobody ALL = NOPASSWD: /var/www/script

PS:使用您的脚本存在安全风险,这有时会在很大程度上破坏数据安全性,因此我的建议是不要像调用脚本一样这一点。