如何使/etc/hosts可为php编写而不为用户编写

如何使/etc/hosts可为php编写而不为用户编写,php,apache,permissions,chmod,Php,Apache,Permissions,Chmod,我一直在试着设置这个,但我累坏了。我不知道如何为php设置可写的/etc/hosts,但不为用户设置 如果我设置了chmod 060/etc/hosts和chown www-data:www-data/etc/hosts,那么php无法写入(我假设php的组是www-data)。如果我设置chmod660/etc/hosts,它不仅适用于php,而且也适用于用户 这可能吗 编辑: 我发现我的用户在www数据组中,这就是为什么在/etc/hosts上应用460不起作用的原因您所做的是一个糟糕的想法

我一直在试着设置这个,但我累坏了。我不知道如何为php设置可写的/etc/hosts,但不为用户设置

如果我设置了
chmod 060/etc/hosts
chown www-data:www-data/etc/hosts
,那么php无法写入(我假设php的组是www-data)。如果我设置
chmod660/etc/hosts
,它不仅适用于php,而且也适用于用户

这可能吗

编辑:
我发现我的用户在www数据组中,这就是为什么在/etc/hosts上应用460不起作用的原因

您所做的是一个糟糕的想法——hosts文件不应该由root以外的任何用户写入

然而,要实现这一点,正确的权限设置是:

chown www-data:www-data /etc/hosts
chmod 644 /etc/hosts

“为用户”是什么意思?哪个用户?PHP是否真的使用uid/gid运行?还要让主机文件对其他人可读。这样做更安全,1)将组更改为www数据2)添加权限664,以便该组具有完全权限。@ACPMaskrade:该配置一开始确实不安全,因此我不会太在意细节。与其更改用户,至少更改一个组会在两个组之间添加一个步骤。我喜欢它胜过上面贴的那张。