Linux上的PHP用户
使用PHP读取或写入文件是一种很普遍的做法,但是如果没有适当的用户权限,它通常会掉落,导致程序无所事事。尽管由于缺少适当的安全模型而在Windows计算机上这不是问题,但是在Linux计算机上,您需要确保脚本可以使用正确的权限运行。
首先,您必须确定用户和组的名称。在OSX上,用户和组的默认值均为“www”。如果您使用的是Apache,则用户和组信息将保留在http.conf文件中。查找几行如下所示,这是Apache2.2的默认设置。
User daemon Group daemon
在此服务器上,我的PHP脚本将与“守护程序”的用户和组一起运行。您必须使用chmod更改运行脚本的目录的所有者。例如,如果您的服务器从/user/local/apache2/htdocs/运行,则应使用以下代码。您可能必须以root用户身份登录才能运行此程序。
chown daemon:daemon /usr/local/apache2/htdocs/ chmod 770 /usr/local/apache2/htdocs/
您可以在chomod和chown上都使用-R标志,以使所有子目录具有相同的权限。
chown -R daemon:daemon /usr/local/apache2/htdocs/ chmod -R 770 /usr/local/apache2/htdocs/
将安全性设置为770将非常安全,因为它将仅允许用户守护程序对这些目录具有读/写访问权限。将chmod代码设置为775将允许您读取文件。如果您使用与登录服务器时相同的Apache用户名,则不会有此麻烦。