Skip to content

[存档]WordPress和插件更新需要FTP信息/更新失败:网站目录所属用户和用户组权限导致。

缘由:很多时候,服务器和VPS如果是采用LNMP,在更新Wordpress和插件的时候,后台会提示你提供FTP信息(包括主机地址,账户和密码)用作更新Wordpress和插件。而很多时候,我们习惯于安装LNMP和安装Wordpress的用户和组都不一样。例如如果安装LNMP是使用LNMP.ORG提供的一键安装,你会发现自己可能安装Wordpress用的是root用户,而安装好的LNMP的配置文件却配置为www用户,用户和组的权限问题就是Wordpress和插件更新需要FTP和更新失败的原因。

测试系统为CentOS 6,如果你的系统不是CentOS,请自行搜索相应命令

1.先确定nginx是以什么用户和组来运行的:

1).查找文件前我们需要先更新文件系统的数据库,使用updatedb命令,有些服务器和VPS直接就”command not found”,那就需要先安装:

yum install mlocate -y

2).利用locate命令查找nginx.conf所在目录路径:

locate nginx.conf

3).键盘党利用vi查看nginx.conf信息(路径可能不和博主写的一样):

vi /usr/local/nginx/conf/nginx.conf

4).你会发现nginx.conf的第一行明确表明了运行的用户和所属组:

user www www ;

2.修改网站目录所属的用户和组:

1).还是以LNMP.ORG的一键安装脚本为例,如果没有自定义网站目录,网站的目录应该是在/home/wwwroot/下,第一种方法是仅修改用户:

chown -R www /home/wwwroot/www.yourdomain.com/

这样修改重启nginx后是可以正常更新Wordpress和插件的,但当你以ls -all命令查看目录时,会发现原来的root组变成了65534,65534是nobody组;

2).第二种方法是完整修改网站目录的所属用户和组:

chown -R www:www /home/wwwroot/www.yourdomain.com/

这样修改重启nginx后也一样成功更新Wordpress和插件,当你以ls -all命令查看目录时,目录下的所有文件所属用户就变成www,组也更改为nginx.conf配置的www。建议使用这种方法。

3.重启nginx生效

Post a Comment

Your email is never published nor shared. Required fields are marked *
*
*