我新安装了 Ubuntu Server 12。我想做的是在驻留在服务器上的 php 网页上执行 landscape-info 命令,这样我就可以使用返回的数据,但它不会运行一些原因。我检查了 apache 的工作原理,因为我可以看到来自服务器 IP 地址的网页,并使用 phpinfo() 检查安全模式已关闭,但它仍然无法显示任何内容。我自己从未运行过 apache,也没有什么 linux 经验。任何想法可能导致此或检查什么?谢谢。
<?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)
请您参考如下方法:
目录/var/www/.landscape 似乎不存在或不可写。在终端中运行:
mkdir -p /var/www/.landscape && chmod -R og+rwX /var/www/.landscape
如果所需目录已经存在,这将使所需的目录没有错误,然后将递归地更改其权限,使每个人都可读/可写,如果它有任何子目录,它们也可以访问..
