我目前正面临工作中的问题,因为我们使用Wordpress创建公司的网站,而正在生成的文件由用户 www-data 和group www-拥有数据,而我的帐户来自 users-ftp
由于我的FTP帐户没有权限(也适用于与插件管理和缓存插件冲突的Wordpress),这导致我管理文件的几个问题
从我的观点来看,问题来自托管,无法解决问题。但是在工作中我被告知这可能是一个糟糕的Wordpress安装。
有没有办法强制Wordpress在我的FTP帐户下创建新文件而不是www-data? (或以某种方式解释托管服务如何解决此问题)
关于我可用的选项,它只是一个FTP帐户(没有.php文件)和PHPMyAdmin的表。
答案 0 :(得分:1)
www-data
是用户Web服务器使用的(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"该属性将保留目录中具有相同组权限的新文件和目录。基本上它允许你(用户-ftp)通过FTP编辑和上传文件。
您还可以将用户添加到www-data
群组:
sudo adduser {your-user} www-data
允许您的Web服务器写入它(如果需要)。
另一个解决方案是更改www-data并让您的网络服务器以另一个用户身份运行:
sudo nano /etc/apache2/envvars
然后在文件中:
export APACHE_RUN_USER=your-user
export APACHE_RUN_GROUP=your-user-group
显然,您想要重新启动Web服务器:
sudo service apache2 restart // Or another similar command for nginx, etc...