今天在网页上传图片到博客,结果提示:“无法将上传的文件移动至 /home/wwwroot/wp-content/uploads/2013/”,郁闷了,认为是权限问题,修改了文件,都改成了777的权限,但是还是不可以写入,图片无法上传。 索性,我查看了我的网站根目录文件夹的权限,显示是www ,www ,而用ps aux|grep Nginx 显示的是nobody 的身份运行Nginx的子程序,ps aux|grep PHP-fpm,显示的也是nobody。同时发现,我网站里的其他的文件和文件夹的权限却是root,root。这可能是因为我上次直接用root身份拷贝导致的,所以,无法用nobody的身份修改root的文件。 方法如下:
第一步:
先分别将Nginx和PHP-fpm子程序的运行身份变成www,用户组group也变成www。 修改Nginx.conf文件,将user nobody nobody;改成user www www; 运行命令:Nginx restart //重启Nginx
改成:
运行命令:service PHP-fpm reload //重启PHP-fpm
第二步:
修改所有文件夹和文件为www,www再次上传图片,提示成功上传了,问题解决了。 网上还有一些其他的方法,比如将图片修改成英文名,或者修改文件夹为777。其实很多情况下权限是777了,但是依旧不能上传,可以考虑是不是文件属主的问题。
原文链接:https://www.f2er.com/php/21647.html