我有一个Ubuntu服务器12的新安装。我想要做的是在服务器上的PHP网页上执行landscape-info命令,所以我可以使用返回的数据,但它赢了由于某种原因跑步。我已经检查Apache的作品,因为我可以看到从服务器的IP地址的网页和检查安全模式关闭使用phpinfo()但它仍然无法显示任何东西。我从来没有自己运行过Apache,并且没有Linux经验。任何想法可能导致这个或什么检查?谢谢。shell_exec不显示任何东西PHP
<?php
$output = shell_exec('../../usr/bin/landscape-sysinfo');
echo "$output";
?>
编辑:
改为:
<?php
$output = shell_exec('/usr/bin/landscape-sysinfo');
echo $output;
?>
寻找在Apache的error.log中,我发现了很多:
OSError: [Errno 13] Permission denied: '/var/www/.landscape'
Traceback (most recent call last):
File "/usr/bin/landscape-sysinfo", line 22, in <module>
run(sys.argv[1:], reactor)
File "/usr/lib/python2.7/dist-packages/landscape/sysinfo/deployment.py", line 96, in run
setup_logging()
File "/usr/lib/python2.7/dist-packages/landscape/sysinfo/deployment.py", line 83, in setup_logging
os.mkdir(landscape_dir)
File "/usr/lib/python2.7/dist-packages/landscape/sysinfo/deployment.py", line 83, in setup_logging
os.mkdir(landscape_dir)
您的日志中是否有任何错误? –
*此函数可以在发生错误或程序不产生输出时返回NULL。使用此功能无法检测执行失败。当需要访问程序退出代码时,应使用exec()。*您可能想要验证可执行文件的输出是否有效。在PHP-shell中,可执行文件的行为也会有所不同。 – 2013-11-28 21:18:22
我在用户权限问题上下注 – 2013-11-28 21:18:48