我在 Ubuntu 14.04 中运行 apache2。我在使用后端 FTP 的 FTP 客户端和 CMS 的权限方面遇到了问题。我似乎永远无法获得正确的权限。 www-data 应该是/var/www/html 的所有者,并且 root 作为分配给该组的用户吗?
最佳答案
一些 CMS 和 Wordpress 在这方面尤其糟糕,因为它实际上是在使用 Web 用户的代码中。
顺便说一句,您永远不需要使用 root
进行 ftp。 www-data
ubuntu 上的默认 apache 用户应该拥有您的 Web 文件/目录,以便与许多 cmses 正常工作。
这就是以前有效的方法,也是我们为遇到同样问题的客户所做的。将用户和组
的整个网络根目录chown为www-data
。
因此,如果您的文档根目录是 /var/www/html
,请 cd 或将目录更改为 /var/www
并运行此命令以更改所有文件和目录的所有权.
chown -R www-data: html/
当仍在 /var/www
目录中时,通过运行此命令向组添加文件和目录的写入权限。
find html -type f -exec chmod 664 {} + -o -type d -exec chmod 775 {} +
最后将您的 FTP 用户添加到 www-data
组。
usermod -a -G www-data username
将用户名替换为您的 FTP 客户端用户名
现在,此设置应该允许您使用管理文件,并且仍然允许 CMS ftp 后端仍然运行并写入目录。让我知道这对你有用。
关于apache - var/www/html 的正确所有者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28918996/