Web服务器权限问题

Web服务器权限问题

我的专用网络服务器存在权限问题,但我不明白我做错了什么。

  • Ubuntu 14.04
  • 内核 3.19.2
  • Apache 2.4.7
  • PHP 5.5.9
  • MySQL 5.5

(除内核外,其余均来自官方存储库。内核来自 Vivid 存储库)

我已经安装了 apache2,它以用户 www-data 启动

我已经设置了一个虚拟主机/home/USER1/public_html (所有权为 USER1:USER1)

所以如果我安装任何 CMS(例如 joomla、wordpress 或 phpbb),我会遇到很多权限问题,并且我被迫将 chmod 设置为 777(天哪!违背常识)才能安装其中一个。

据我所知,这种 CMS 的“标准”模式是目录 755,文件 644

但如果我设置了这些权限,我就无法对 cms 执行任何操作(安装任何东西或更新它。文件将被视为不可写)。775 也有同样的问题

所以问题是我的网络服务器需要对“其他”的所有权限,而不仅仅是对用户(或至少对组)的权限

为了避免这个麻烦,我已将 USER1 添加到 www-data 组

usermod -a -G www-data USER1

但是使用 775 或 755 仍然无法写入文件。唯一允许的模式仍然是 777(天哪,在同一篇文章中写两次真是太可怕了:D)

这是什么问题?我该如何解决?

答案1

我已经自己解决了这个问题

usermod -a -G USER1 www-data

chown -R USER1:www-data /home/USER1/public_html

chmod ug+s /home/USER1/public_html

这不是“最佳方式”,但比使用 www-data 作为所有虚拟主机的所有者和管理者更好!!!

相关内容