You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RedHat服务器Apache多用户多WordPress网站权限配置方案咨询

RedHat服务器Apache多用户多WordPress网站权限配置方案咨询

嗨,我来帮你梳理下这个权限配置的问题,你遇到的核心问题其实不是所有者和组的顺序,而是目录的基础权限设置和用户访问的隔离逻辑没到位,咱们一步步来解决:

首先,你之前用chown company1:apache /var/www/company1/*的方式,之所以company1能访问company2的文件夹,大概率是因为/var/www或者/var/www/company2的权限是755——这意味着所有用户(包括company1)都有读和执行权限,自然能进入company2的目录。反过来换apache:company1也解决不了这个问题,因为这只是把所有者换成了apache,组设为company1,但其他用户依然可能有访问权限。

下面是更合理的配置方案,兼顾用户隔离和Apache的运行需求:

1. 调整目录结构的所有权与基础权限

  • 先给每个公司的根目录设置专属的用户和组:
    chown -R company1:company1 /var/www/company1
    chown -R company2:company2 /var/www/company2
    
  • 然后设置目录权限,确保只有所有者和所属组能访问,其他用户完全无权:
    chmod -R 750 /var/www/company1
    chmod -R 750 /var/www/company2
    
  • 最后调整/var/www的权限,让普通用户只能进入自己的子目录(不能查看其他公司的目录列表):
    chmod 711 /var/www
    
    这里711的意思是:所有者有读写执行,组和其他用户只有执行权限——这样用户能进入/var/www,但看不到里面的其他公司目录,只能进入自己有权限的companyX文件夹。

2. 让Apache拥有必要的读写权限

Apache需要对WordPress的目录和文件有读写权限(比如上传媒体、更新插件),这里有两种常用方式:

方式一:将Apache用户加入对应公司的组

把apache用户添加到company1和company2的组里:

usermod -aG company1 apache
usermod -aG company2 apache

这样apache就继承了组的权限,能对/var/www/companyX下的文件进行读写操作,同时因为目录权限是750,其他公司的用户依然无法访问不属于自己的目录。

方式二:使用ACL(访问控制列表)细化权限

如果不想让apache加入所有公司的组,可以用ACL给apache单独分配权限:

# 给company1目录添加apache的读写执行权限
setfacl -R -m u:apache:rwx /var/www/company1
# 确保新创建的文件也继承这个ACL权限
setfacl -R -d -m u:apache:rwx /var/www/company1
# 对company2执行同样操作
setfacl -R -m u:apache:rwx /var/www/company2
setfacl -R -d -m u:apache:rwx /var/www/company2

这种方式更灵活,apache不需要加入用户组,直接通过ACL获得权限,同时用户隔离依然有效。

3. 验证权限是否生效

完成配置后,你可以切换到company1用户测试:

su - company1
cd /var/www/company2

如果配置正确,这里会提示Permission denied,说明隔离生效;同时尝试在/var/www/company1下创建文件,再切换到apache用户(或者用sudo -u apache)尝试读写,确认Apache的权限正常。

最后提醒下:WordPress的核心文件和主题插件目录,建议保持755权限,文件设为644,上传目录(wp-content/uploads)需要设为775或者通过ACL让apache有写入权限,避免后续更新或上传出现问题。

备注:内容来源于stack exchange,提问作者Lord Pou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 15:39:32