PHP问题

PHP中不能使用exec(),system(),shell_system()等函数的解决方法

文 / 管理员 来源 / 原创 阅读 / 394 3年前

服务器上代码 index.php:

<?php    
    $cmd = 'php -v';    
    exec($cmd, $arr);    
    var_dump($arr);

浏览器访问后,打印结果是:NULL

说明服务器没有开启php禁用了exec();


解决办法:

1、加入函数查看当前运行的用户:

<?php    
    var_dump(get_current_user());    
    $cmd = 'php -v';    
    exec($cmd, $arr);
    var_dump($arr);

显示:root

2、到服务器修改文件权限:

$ chmod 777 index.php

查看index.php的所属用户及权限:

$ ll

结果:-rwxrwxrwx 1 root root    1595 Sep 20 10:18 index.php

3、查看php.ini 是否禁用了这些函数:

$ cd /usr/local/php/etc
$ vim php.ini

找到disable_functions = 

image.png

把exec, system,exec_shell去掉,用到哪个去哪个;

4、重启php服务,这一步很重要:

$ /etc/init.d/php-fpm restart

然后进行测试,浏览器访问服务器结果:

image.png


温馨提示:大部分还是因为php.ini禁用exec函数,和文件的执行权限问题。

评论

共0条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

站点声明:本站转载作品版权归原作者及来源网站所有,原创内容作品版权归作者所有,任何内容转载、商业用途等均须联系原作者并注明来源。

© 2020-2030 qdxcy.cn 版权所有京ICP备13045222号
相关侵权、举报、投诉及建议等,请发E-mail:2323946929@qq.com

友情链接: YzmCMS官方网站 YzmCMS官方论坛