PHP exec / shell_exec / system无法通过浏览器工作

时间:2011-03-14 23:28:41

标签: php apache system exec shell-exec

我正在运行一个带有apache版本1.3.33和PHP版本4.4的SCO Unix盒子。我可以通过cli正确执行exec命令,但是在尝试通过浏览器执行脚本时会遇到麻烦。我的设置是:

  • 安全模式关闭
  • 完全读/写/执行权限
  • 显示所有错误
  • 没有禁用功能

我的代码:htdocs dir中的test_script.php

<?php
exec('ls',$out,$rval);
echo "Output:<hr />";
print "<pre>"; print_r($out); print "</pre>";
echo "Return Value:<hr />";
echo $rval;
?>

我也尝试过显式设置可执行二进制路径。测试脚本与apache是​​相同的用户/组。我也尝试在arg中添加2&gt;&amp; 1,但看不到任何变化。提前谢谢。

请参阅here for similar.

2 个答案:

答案 0 :(得分:6)

$output = shell_exec('ls /tmp/ 2>&1')

您可能在运行网页的用户对当前目录的权限方面遇到问题。

您也可以尝试whoami命令。

答案 1 :(得分:0)

有时这些功能被禁用,您必须在php.ini中启用它们