Wordpress:为创建的文件更改 owner/group

Wordpress: Change owner/group for created files

我目前在工作中遇到一个问题,因为我们使用 Wordpress 创建公司网站,并且生成的文件归用户 www-data 和组所有www-data 而我的帐户来自 users-ftp

这导致我在管理文件时遇到几个问题,因为我的 FTP 帐户没有权限(也适用于与插件管理和缓存插件冲突的 Wordpress)

从我的角度来看,问题出在托管上,它无法解决问题。但是在工作中我被告知这可能是一个错误的 Wordpress 安装。

有没有办法强制 Wordpress 在我的 FTP 帐户而不是 www-data 下创建新文件? (或者以某种方式解释托管服务如何解决这个问题)

关于我可用的选项,它只是一个 FTP 帐户(没有 .php 文件)和一个 table 在 PHPMyAdmin。

www-data 是用户使用的网络服务器(Apache、nginx 等)。因此,当您通过 WordPress 创建文件时,您只是将信息输入到 GUI 中,而您的 Web 服务器实际上正在创建文件,因此使用 www-data 来创建它们。

这里有几个解决方案:

你可以这样做:

sudo chown -R users-ftp:www-data /var/www/html/path-to-your-file // Or whatever your path to your file is

sudo chmod -R g+s /var/www/html/path-to-your-file

第一个命令分别更改用户和组,第二个命令添加一个 "s" 属性,该属性将在您的目录中保留具有相同组权限的新文件和目录。基本上它会允许您 (users-ftp) 通过 FTP.

编辑和上传文件

您还可以将您的用户添加到 www-data 组:

sudo adduser {your-user} www-data

允许您的网络服务器写入(如果需要的话)。


另一种解决方案 是更改 www-data 并让您的 Web 服务器 运行 成为另一个用户:

sudo nano /etc/apache2/envvars

然后在文件里面:

export APACHE_RUN_USER=your-user
export APACHE_RUN_GROUP=your-user-group

显然,您想重新启动您的网络服务器:

sudo service apache2 restart // Or another similar command for nginx, etc...