Php访问主目录

时间:2009-12-25 21:07:02

标签: php linux apache permissions

我有一个脚本,我想访问Linux环境中用户的主目录。

Web root:/ var / www / html / 还有用户目录,例如:/ home / john /家/大卫 等

用户主目录中有文件。用户家庭的权限属于用户。例如: /home/david/file.txt用户:david group:david

是否可以使用apache访问这些文件?我认为这不是因为许可,

有解决方法吗?

换句话说,我在/var/www/html/index.php下的php程序可以访问/home/david/foo.txt下的文件

我怎样才能完成这项工作?谢谢。

2 个答案:

答案 0 :(得分:2)

最好的方法是让用户将特定的所需文件放入pub目录,然后chmod 777该目录。

如果要访问主目录中的任意文件,则必须以root身份运行Apache,这是安全风险。 (虽然你可以改变主目录的权限,但根据我的经验,这可能会搞砸很多程序。)

答案 1 :(得分:0)

对于这些事情,也许我有点偏执,但在我看来,这里有一些概念上的错误:

永远不会向用户提供访问网络的脚本。主目录。这样说的一个原因是,Web服务器的危害可能导致主目录中的文件暴露给可以访问Web服务器的任何人。另一个原因是主目录中的文件(至少在我的理解中)是用户保留或多或少个人/私人文件的地方,其他用户不应该使用这些文件。否则他们会把它放在公共目录中。

虽然我不确定您的用例是什么,但我建议使用不同的概念,其中Apache首先不需要访问其他用户的主目录。