允许PHP不用777写文件

我在我的大学提供的webspace上build立一个简单的网站。 我没有数据库访问权限,所以我将所有数据存储在一个平面文件中。 我遇到的问题与文件权限有关。 我需要PHP能够读取和写入数据文件,但我真的不希望将该文件设置为777,因为系统上的其他人可以修改它,他们已经有读取访问所有人的Web目录。 有没有人有任何想法如何做到这一点?

提前致谢

只要设置0755(或更低),但确保目录所有者是在哪个上下文是Apache(或其他networking服务器)运行的用户。

例如

chown apache:apache /var/www/html 

例如,您可以使用phpinfo()获取有关用户的信息。

UPDATE

如果你与更多的网站共享apache,那么你应该分开你的内容按用户的网页目录

http://httpd.apache.org/docs/2.2/howto/public_html.html

你可以使用suPHP来完成这个任务。 如果您可以使用它,那么只需将文件权限更改为0700,一切都可以按照您的要求进行。

理想的情况是,如果服务器上的文件系统支持posix acls,那么你可以添加写访问某些文件的uid的networking服务器运行。

你有足够的权限访问文件系统(最好通过一个shell帐户)来设置acl权限。

有关如何设置它们的详细信息,请参阅man acl获取概述和man setfacl。

您可以使用下面的命令设置读写权限:

 sudo chown www-data PATH 

如果www-data不存在,则可以用apache:apacheapachereplace它。