解压缩更新...无法创建目录.WordPress的

Big*_*ech 13 php directory wordpress plugins gallery

当我安装nextgen-gallery插件时.出现此错误消息

Downloading update from https://downloads.wordpress.org/plugin/nextgen-gallery.zip…

Unpacking the update…

Could not create directory.
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

skr*_*led 23

这是权限问题.确保该目录可由apache写入.插件被解压缩到wp-content/plugins目录中,所以我首先尝试以apache的形式写入目录:

sudo -u apache touch /path/to/wp-content/plugins/test.txt
Run Code Online (Sandbox Code Playgroud)

相应地设置权限以更正问题.您可以在此处阅读有关权限的信息:http://www.linux.com/learn/tutorials/309527-understanding-linux-file-permissions

您可以在此处阅读有关Wordpress的正确文件权限方案:http://codex.wordpress.org/Changing_File_Permissions#Permission_Scheme_for_WordPress


dam*_*001 18

@skrilled和@ knutole的答案很棒,但我发现当试图解决插件文件夹上的问题时,一切都很好,答案对我不起作用.

如果其他人有此问题,请尝试查看升级文件夹.此文件夹(我可以看到)用作存储临时文件的文件夹,用于运行WP升级或插件更新.

如果您只是收到"无法创建目录"的消息并且没有指定路径,那么它实际上可能是在讨论升级文件夹.

  • 我得到了这个错误,直到我给了'wp-content/upgrade`和`wp-content/plugins` 777权限,但是如何将它更改回更安全的权限(不是777!)并让它仍然有效? (3认同)

Joã*_*ira 6

最有可能的是,如果您已正确配置它,则与您的 wordpress 站点关联的 http 服务器属于该组www-data。这就是人们应该正确配置它的方式。

尝试members www-dataps aux | grep www-data确定。在后一个命令中,您应该在最后一列中看到nginxapache

在这种情况下,您只需将该组设置为目录

sudo chgrp -R www-data <your_wordpress_root_dir>/
Run Code Online (Sandbox Code Playgroud)

然后向该目录添加完整的组权限

sudo chmod -R g+rwx <your_wordpress_root_dir>/
Run Code Online (Sandbox Code Playgroud)

现在它完美运行:)