我需要一些帮助设置正确的权限或所有权的Apache文档根。 这是我需要的:
/var/www/html/<site>
不同网站 我该怎么做? 目前所有文件都是世界可写的,这是不好的。 服务器运行CentOS 5.5
谢谢
创build一个新的组
groupadd webadmin
将您的用户添加到组中
usermod -a -G webadmin user1 usermod -a -G webadmin user2
更改网站目录的所有权
chown root:webadmin /var/www/html/
更改网站目录的权限
chmod 2775 /var/www/html/ -R
现在任何人都可以读取文件(包括apache用户),但只有root和webadmin可以修改它们的内容。
我更喜欢用-o acl挂载分区。 这使您可以使用setfacl命令为文件和文件夹设置精细的权限,而不是仅指定用户组的其他权限。
所以把acl放到/ etc / fstab的分区行,或者用mount -o remount,acl / mnt / xy重新挂载,然后把你的web目录的所有权给nobody:nobody。 Chmod设置为770,并使用setfacl仅为需要的文件夹提供写入权限,例如。 给www-data(或者你的web服务器运行的用户)写上传文件夹的权限,并给你自己的用户写整个目录的权限。
mkdir dir chown nobody:nobody dir setfacl -mu:www-data:rx,d:u:www-data:rx dir setfacl -mu:www-data:rwx,d:u:www-data:rwx dir/upload setfacl -mu:youruser:rwx,d:u:youruser:rwx dir
现在除了您的networking服务器和您自己的用户之外,没有人可以读取您的文件。 您可以写入文件夹中的每个文件,并且Web服务器只能写入上传文件夹。