浅谈PHP的exec()函数无返回值排查方法(必看)


Posted in PHP onMarch 31, 2017

在安全imagemagic时 需要用到 exec很多服务器上安装失败

exec()执行外部命令失败,但没有任何错误信息。

exec执行某命令在命令行下没有问题,但是在php中就出错。这个问题99.99%与权限有关,但是exec执行的命令不会返回错误。一个技巧就是使用管道命令,假设你的exec调用如下:

exec('convert a.jpg b.jpg', $output, $return_val);

可以更改如下:

exec('convert a.jpg b.jpg 2>&1', $output, $return_val); 


print_r($output);

使用 2>&1,命令就会输出shell执行时的错误到$output变量, 输出该变量即可分析。

备注: exec有3个参数,第一个是要执行的命令,第二个是参数是一个数组,数组的值是由第一个命令执行后生成的,第三个参数执行的状态,0表示成功,其他都表示失败。

在php里面一共有三个函数可以用来执行外部命令system,exec,passthru。

以上这篇浅谈PHP的exec()函数无返回值排查方法(必看)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
Nov 02 PHP
PHP数据库操作之基于Mysqli的数据库操作类库
Apr 19 PHP
php socket实现的聊天室代码分享
Aug 16 PHP
php中ftp_chdir与ftp_cdup函数用法
Nov 18 PHP
php中二维数组排序问题方法详解
Aug 28 PHP
php上传图片并压缩的实现方法
Dec 22 PHP
Yii中创建自己的Widget实例
Jan 05 PHP
php rsa 加密,解密,签名,验签详解
Dec 06 PHP
windows下的WAMP环境搭建图文教程(推荐)
Jul 27 PHP
YII框架模块化处理操作示例
Apr 26 PHP
php解决crontab定时任务不能写入文件问题的方法分析
Sep 16 PHP
Laravel 集成微信用户登录和绑定的实现
Dec 27 PHP
关于PHP通用返回值设置方法
Mar 31 #PHP
PHP针对中英文混合字符串长度判断及截取方法示例
Mar 31 #PHP
微信小程序 消息推送php服务器验证实例详解
Mar 30 #PHP
Yii2使用$this->context获取当前的Module、Controller(控制器)、Action等
Mar 29 #PHP
PHP的反射机制实例详解
Mar 29 #PHP
php面向对象之反射功能与用法分析
Mar 29 #PHP
PHP命名空间namespace的定义方法详解
Mar 29 #PHP
You might like
php 的加密函数 md5,crypt,base64_encode 等使用介绍
2012/04/09 PHP
PHP遍历某个目录下的所有文件和子文件夹的实现代码
2013/06/28 PHP
ThinkPHP提交表单时默认自动转义的解决方法
2014/11/25 PHP
PHP连接数据库实现注册页面的增删改查操作
2016/03/27 PHP
YII分模块加载路由的实现方法
2018/10/01 PHP
window.onbeforeunload方法在IE下无法正常工作的解决办法
2010/01/23 Javascript
JavaScript实现的一个倒计时的类
2015/03/12 Javascript
js实现点击获取验证码倒计时效果
2021/01/28 Javascript
一步一步封装自己的HtmlHelper组件BootstrapHelper(二)
2016/09/14 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
JavaScript判断输入是否为数字类型的方法总结
2017/09/28 Javascript
vue移动端UI框架实现QQ侧边菜单组件
2018/03/09 Javascript
vue2.0学习之axios的封装与vuex介绍
2018/05/28 Javascript
vue interceptor 使用教程实例详解
2018/09/13 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
Nodejs实现图片上传、压缩预览、定时删除功能
2019/10/25 NodeJs
JavaScript点击按钮生成4位随机验证码
2021/01/28 Javascript
[02:19]DOTA选手解说齐贺岁
2018/02/11 DOTA
详解Python中的正则表达式的用法
2015/04/09 Python
Python编程实战之Oracle数据库操作示例
2017/06/21 Python
pycharm远程调试openstack的图文教程
2017/11/21 Python
TensorFlow实现AutoEncoder自编码器
2018/03/09 Python
python and or用法详解
2019/06/26 Python
Python求离散序列导数的示例
2019/07/10 Python
css3圆角边框和边框阴影示例
2014/05/05 HTML / CSS
css3新单位vw、vh的使用教程
2018/03/23 HTML / CSS
用canvas显示验证码的实现
2020/04/10 HTML / CSS
Prototype中如何为一个元素添加一个方法
2014/12/08 面试题
新闻发布会策划方案
2014/06/12 职场文书
财务管理专业自荐书
2014/09/02 职场文书
普通党员四风问题对照检查材料
2014/09/27 职场文书
2016年元旦寄语
2015/08/17 职场文书
2016高一新生军训心得体会
2016/01/11 职场文书
2016年度继续教育学习心得体会
2016/01/19 职场文书
Pytorch反向传播中的细节-计算梯度时的默认累加操作
2021/06/05 Python
美国运营商 T-Mobile 以 117.83Mb/s 的速度排第一位
2022/04/21 数码科技