上周我遇到了同样的问题。在尝试了所有提出的解决方案都没有成功后,我突然想到我们在服务器上启用了 SElinux。在我的情况下,也许对于许多其他人来说,SElinux 负责错误消息:
Unable to create directory wp-content/uploads/2013/04. Is its parent directory writable by the server?
我的解决方案基于此处提出的解决方案:http ://doc-ok.org/?tag=selinux ,它可能更适合其他人的需求。
就我而言,我的 wordpress 目录位于服务器上的主文件夹中,我可以通过 ssh 访问该文件夹。否则,您将不得不询问您的管理员。
无论如何,这是我的解决方案。
chgrp -R apache wordpress #change wordpress with your base directory for wp..
#alternatively, chown the whole directory to apache
chmod -R 774 wordpress/wp-content #if chown by apache, the permissions can be more restrictive
在我的情况下,不仅文件夹所有权/组所有权必须更改为 apache。wp-content 目录的 SElinux 标签也必须更改为 httpd_sys_rw_content_t 或 httpd_sys_content_t:
chcon -Rv --type=httpd_sys_content_t wordpress/wp-content
这对我有用。
有关 SElinux 的更多信息可以在例如以下位置找到:
wiki.centos.org/HowTos/SELinux
和
fedoraproject.org/wiki/SELinux