PHP调用Linux命令权限不足问题解决方法


Posted in PHP onFebruary 07, 2015

业务背景:  yourcmd为我的linux程序,它对权限要求非常严格,当用php去执行yourcmd程序

系统:CentOS 6.3

apache是php的执行用户

用exec函数去执行linux系统上的程序/usr/local/yourcmd/sbin/yourcmd

php代码如下:

<?php

$conf_file = "/var/www/html/webroot/test.tmp";

$command = "sudo /usr/local/yourcmd/sbin/yourcmd -t -f {$conf_file}";

exec($command,$out);

print_r($out);

测试结果为没有权限
Array ( [0] => sudo: no tty present and no askpass program specified )

解决步骤:
$ visudo

1)注释以下行
#Defaults    requiretty

2)在文件末尾加入以下
apache ALL=(ALL) NOPASSWD: ALL

Cmnd_Alias yourcmd = /usr/local/yourcmd/sbin/yourcmd

最后测试结果
Array ( [0] => Warning: memory is too small: 1044725760 [1] => test configure is ok )
PHP 相关文章推荐
PHP array_flip() 删除重复数组元素专用函数
May 16 PHP
PHP下常用正则表达式整理
Oct 26 PHP
php中0,null,empty,空,false,字符串关系的详细介绍
Jun 20 PHP
PHP生成sitemap.xml地图函数
Nov 13 PHP
php实现图片添加水印功能
Feb 13 PHP
php function用法如何递归及return和echo区别
Mar 07 PHP
php提交表单发送邮件的方法
Mar 20 PHP
WAMP环境中扩展oracle函数库(oci)
Jun 26 PHP
浅谈PHP检查数组中是否存在某个值 in_array 函数
Jun 13 PHP
Laravel实现自定义错误输出内容的方法
Oct 10 PHP
Laravel接收前端ajax传来的数据的实例代码
Jul 20 PHP
详解PHP防止直接访问.php 文件的实现方法
Jul 28 PHP
PHP处理大量表单字段的便捷方法
Feb 07 #PHP
PHP生成压缩文件实例
Feb 07 #PHP
PHP实现股票趋势图和柱形图
Feb 07 #PHP
PHP中的闭包(匿名函数)浅析
Feb 07 #PHP
PHP实现自动识别Restful API的返回内容类型
Feb 07 #PHP
PHP curl CURLOPT_RETURNTRANSFER参数的作用使用实例
Feb 07 #PHP
迁移PHP版本到PHP7
Feb 06 #PHP
You might like
PHP中集成PayPal标准支付的实现方法分享
2012/02/06 PHP
PHP imagecreatefrombmp 从BMP文件或URL新建一图像
2012/07/16 PHP
php时间戳转换代码详解
2019/08/04 PHP
ThinkPHP5&amp;5.1实现验证码的生成、使用及点击刷新功能示例
2020/02/07 PHP
javascript 网页跳转的方法
2008/12/24 Javascript
JavaScript 开发规范要求(图文并茂)
2010/06/11 Javascript
JS实现的生成随机数的4个函数分享
2015/02/11 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
javascript文本模板用法实例
2015/07/31 Javascript
jQuery结合CSS制作动态的下拉菜单
2015/10/27 Javascript
详解js图片轮播效果实现原理
2015/12/17 Javascript
JavaScript编程中实现对象封装特性的实例讲解
2016/06/24 Javascript
如何利用JSHint减少JavaScript的错误
2016/08/23 Javascript
JavaScript 实现的checkbox经典实例分享
2016/10/16 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
解决npm安装Electron缓慢网络超时导致失败的问题
2018/02/06 Javascript
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
点击按钮弹出模态框的一系列操作代码实例
2019/03/29 Javascript
微信公众号生成新浪短网址的实现(快速生成)
2019/08/18 Javascript
Vue使用NProgress的操作过程解析
2019/10/10 Javascript
JavaScript实现文件下载并重命名代码实例
2019/12/12 Javascript
详解uniapp的全局变量实现方式
2021/01/11 Javascript
python实现同时给多个变量赋值的方法
2015/04/30 Python
Python基于回溯法子集树模板解决选排问题示例
2017/09/07 Python
Anaconda 离线安装 python 包的操作方法
2018/06/11 Python
Window环境下Scrapy开发环境搭建
2018/11/18 Python
初探利用Python进行图文识别(OCR)
2019/02/26 Python
python sklearn库实现简单逻辑回归的实例代码
2019/07/01 Python
浅析matlab中imadjust函数
2020/02/27 Python
Python 读取位于包中的数据文件
2020/08/07 Python
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
班子四风对照检查材料
2014/08/21 职场文书
党的群众路线对照检查材料
2014/08/27 职场文书
2016教师廉洁教育心得体会
2016/01/13 职场文书
使用Oracle命令进行数据库备份与还原
2021/12/06 Oracle