文件所有者/组的问题

我有我的网站上的文件,我需要访问我的服务器上的文件,他们也需要能够由networking服务器进行编辑。 现在用我目前的设置,我似乎无法做到这一点。

如果所有者/是imran:imran,那么我可以完全访问该文件,但是我的webserver似乎无法打开/编辑这些文件。 现在我被告知,我需要将文件所有者/组与networking服务器使用的文件相匹配,我查看了networking服务器创build的文件,而他们是没有人:没有人。 所以我把我的整个public_html所有者/组更改为nobody:没有人,因为我只是在文件夹中有太多的文件需要被web服务器编辑,并且花费太长的时间来逐个改变所有者。 networking服务器能够编辑它很好,但更改后,我意识到了一些东西..现在我甚至不能查看public_html文件夹。

有谁知道什么是正确的方式来设置所有者,以便我有访问以及networking服务器?

(这是在一个WHM / cPanel供电的服务器上)

以下命令:

chown imran:nobody public_html chmod 0775 public_html chown imran:nobody -R public_html/* find public_html/ -type f -exec chmod 0664 '{}' \; find public_html/ -type d -exec chmod 2775 '{}' \; # In your .bash_profile / .bashrc set: umask 002 

这应该照顾你的麻烦。 它允许nobody组写入public_html目录和子文件夹,但是“世界”不允许写入这些文件(例如chmod 777)。 作为所有者,您对这些文件也拥有完全的权限。 设置目录上的setgid位确保权限保持这种状态,umask修改意味着您将使用一组不同的默认权限创build文件。

有时候,没有人用户不是自己组的一部分,所以要解决这个问题

 gpasswd -a nobody nobody 

确保你在需要由web服务器,CGI脚本等执行的任何东西上加上+ x位。