推荐手册:php完全自学手册
权限问题:
当我们在服务器上直接执行linux系统命令时(此处以ping为例),执行权限取决于我们登录用户的权限,如果我们登录用户为root ,则执行ping的时候是用root来执行。但当我们在网站上访问的时候,我们此时的用户为www,如果不修改ping的执行权限的话,是无法执行成功的。
推荐教程:PHP视频教程
解决方法:
修改ping或者对应命令的执行权限。
命令路径问题:
当我们用exec执行某个命令时,不报错,也不返回结果,原因是此命令没有在环境变量配置的目录下即/etc/profile文件中,以ifconfig为例,我们可以用whereis ifconfig,找出此命令具体路径。
解决方法:
1、复制命令到/usr/bin下,也就是环境变量下的目录
2、直接将命令全路径补全exec('/usr/sbin',$output)
3、在环境变量中增加目标目录例如增加/usr/sbin到目录
相关文章推荐:
1.PHP中使用exec调用系统命令
2.php中shell_exec() 与 exec()函数的区别
3.php中exec()函数执行系统命令失败问题解决方法
相关视频推荐:
1.独孤九贱(4)_PHP视频教程
以上是php exec执行不了的详细内容。更多信息请关注PHP中文网其他相关文章!