道招

用nginx架设wordpress提示上传文件失败,无权限

如果您发现本文排版有问题,可以先点击下面的链接切换至老版进行查看!!!

用nginx架设wordpress提示上传文件失败,无权限

网上一般解决方案都只是简单说文件没有执行权限,需要设置为755权限。实际上在使用nginx来作为服务器来使用wordpress的时候,需要用到php-fpm来解析php,默认用户是apache,而我们利用ssh登录vps时一般都是用的root权限,所以我们在用apache用户来写入root权限的文件夹,肯定会提示没有权限的啊。

我们在升级php的时候很可能会重新把php-fpm的用户设置为默认的apach,这时候就跟nginx不一致了。 我们可以这样查看进程的权限 查看nginx的进程

ps -ef | grep nginx

nginx    15095 15094  0 14:00 ?        00:00:01 php-fpm: pool www
nginx    15096 15094  0 14:00 ?        00:00:01 php-fpm: pool www
nginx    15097 15094  0 14:00 ?        00:00:01 php-fpm: pool www
nginx    15098 15094  0 14:00 ?        00:00:01 php-fpm: pool www
nginx    15099 15094  0 14:00 ?        00:00:01 php-fpm: pool www
root     22719     1  0 17:22 ?        00:00:00 gedit /etc/nginx/nginx.conf

查看php-fpm进程 ps aux|grep php-fpm

root     27478  0.0  1.1 375840 23484 ?        Ss   09:30   0:00 php-fpm: master process (/etc/php-fpm.conf)
apache   27480  0.4  2.3 486932 48096 ?        S    09:30   0:01 php-fpm: pool www
apache   27481  0.4  2.1 401412 43492 ?        S    09:30   0:00 php-fpm: pool www
apache   27482  0.3  2.0 398912 41208 ?        S    09:30   0:00 php-fpm: pool www
apache   27483  0.3  2.3 486788 47960 ?        S    09:30   0:00 php-fpm: pool www
apache   27484  0.2  1.9 397188 39396 ?        S    09:30   0:00 php-fpm: pool www
apache   27487  0.2  1.9 397188 39396 ?        S    09:30   0:00 php-fpm: pool www
root     27496  0.0  0.1 112720  2248 pts/2    S+   09:34   0:00 grep --color=auto php-fpm

很明显,我们可以选择将php-fpm的用户由apach改成之前的nginx

vi /etc/php-fpm.d/www.conf

修改其中的user和group那两行

; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
;       will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx

然后重启php-fpm

systemctl restart php-fpm

可以用 ll来查看文件的权限

drwxr-xr-x 5 root root 4096 Aug 21 12:16 wordpress

我们可以简单点,直接把wordpress根目录文件夹及其子文件夹的owner直接改成apache。

chown -R  apache /wordpress

当然,如果你的wp-content必要的执行权限是必须的

chmod 755 /wordpress/wp-content

如果想连用户和用户组全部更改的话

chown -R nginx:nginx  /wordpress
更新时间:
上一篇:下一篇:

相关文章

关注道招网公众帐号
道招开发者二群