linux 下 php执行 exec 无反应 返回值为空

Posted 博客园站长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 下 php执行 exec 无反应 返回值为空相关的知识,希望对你有一定的参考价值。

ps:请先确保 php.ini 的disable_functions 配置没有拦截  exec ,有请删掉,保存,重启php

-------------------------------------------------------------------下面开始正文
1、先找出是哪个用户在执行这个文件的

<?php
$result = exec("whoami", $outcome, $status);

var_dump($outcome);


我的是输出为 www 也有可能是 apache 、daemon
也就是说是 www这个用户在执行

2、给这个用户增加运行命令的权限
打开这个文件
vim /etc/sudoers 搜索 ## Allow root 在root下面行加入 www ALL=(ALL) NOPASSWD:ALL 如下所示 www指上述输出的用户名,请根据实际来调整

## Allow root to run any commands anywhere

root ALL=(ALL) ALL

www ALL=(ALL) NOPASSWD:ALL

3、重启linux服务器 reboot,完成

以上是关于linux 下 php执行 exec 无反应 返回值为空的主要内容,如果未能解决你的问题,请参考以下文章

PHP:exec()函数为啥没有反应呢?

PHP在Linux下Apache环境中执行exec,system,passthru等服务器命令函数

linux下exec函数不返回结果

如何解决php执行exec函数ffmpeg命令不生效的问题

php如何执行linux的curl指令

LINUX+NGINX下的PHP shell_exec()函数执行linux命令 2019-08-08