重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
PHP执行linux命令,需要用到几个方法,比如system() exec() passthru()
成都创新互联公司专业为企业提供浔阳网站建设、浔阳做网站、浔阳网站设计、浔阳网站制作等企业网站建设、网页设计与制作、浔阳企业网站模板建站服务,十载浔阳做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
我用的是exec()
执行一个脚本
$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了。