PHP執行linux命令,需要用到幾個方法,比如system() exec() passthru()
我用的是exec()
執行一個腳本
<?php
$result="/opt/1.sh";
exec($result,$res,$ret);
if($ret == "0") {
echo "true";
}else{
echo "false";
}
網頁訪問,返回false
加sudo測試
在linux系統編輯配置文件
vi /etc/sudoers
www ALL=(ALL) NOPASSWD:ALL
強制保存
修改php代碼
$result="/usr/bin/sudo /opt/1.sh";
訪問還是不行
最後,終於解決辦法
編輯配置文件,註釋一掉內容(表示不需要控制終端)
vi /etc/sudoers
#Defaults requiretty
最後測試,就返回true了。