1

我正在使用红帽企业版 n 尝试制作一个简单的 php 页面..

当我尝试...

 // html code
 <?php
 echo exec(<cmd>); 
 ?>
// rest html code

它工作正常

但是当尝试...

 // html code     
 <?php
 exec(<cmd>);
 ?>
 // rest html code

它不工作

即使像 cat,ls 等这样的简单命令也不起作用,我也尝试过,2 > &1然后没有打印错误。

可能的错误是什么???

4

2 回答 2

5

文件:

从命令返回响应,您还需要打印响应

例子:

<?php
$response = array()
exec('whoami', $response);
print_r($response,true);
?>
于 2011-10-20T17:24:26.697 回答
0

okkkkkkk…………我解决了这个问题。其实有两个问题...

  1. apache用户默认在文件夹中搜索其命令,而/usr/bin我尝试使用的命令位于/usr/local/bin. 所以我需要在/usr/bin目录中创建该命令的软链接。

  2. 其次,apache是一个比 root 特权更少的用户,因此需要使用sticky bitof 命令,以便 apache 可以成功运行该命令。

我希望这将帮助其他人也将在未来面临同样的问题。

于 2011-11-29T21:48:12.423 回答