Wordpress 插件安装:无法创建目录
Posted
技术标签:
【中文标题】Wordpress 插件安装:无法创建目录【英文标题】:Wordpress plugin install: Could not create directory 【发布时间】:2016-09-06 12:54:14 【问题描述】:我在 centos 6 上使用 WordPress。
我尝试安装插件。但是我收到了这个错误:
安装插件:bbPress 2.5.9 正在从https://downloads.wordpress.org/plugin/bbpress.2.5.9.zip下载安装包...
拆包……
无法创建目录。
我该如何解决这个问题?
P/S:我运行这个命令:
sudo -u root touch /var/www/html/wordpress/wp-content/plugins/test.txt
它有效。但我仍然收到该错误。
【问题讨论】:
test.txt 不是一个目录,我现在写的可能很愚蠢,但是请检查您是否可以在这里创建一个目录。 (只是为了确保)。 【参考方案1】:您只需要更改 WordPress 目录的访问权限:
chown -R www-data:www-data your-wordpress-directory
【讨论】:
your-wordpress-directory = "wp-content" 就我而言,因为我使用的是 Mac,所以它是chown -R _www:_www wp-content
,实际上是 sudo chown -R _www:_www wp-content
。
"your-wordpress-directory" 没有告诉我插件需要哪个目录。在我的 Wordpress 安装中更改每个目录的所有权是不安全的、过分的,并且可能会破坏其他东西。
felwithe,插件所需的目录会随着 wordpress 目录的变化而变化。 your-wordpress-directory
表示您在服务器上放置 wordpress 的位置。【参考方案2】:
您可以使用以下命令解决此问题。您应该首先在 Wordpress 的根文件夹中。
sudo chown -R www-data:www-data wp-content/plugins/
sudo chmod 775 wp-content
sudo chown -R www-data:www-data wp-content/
【讨论】:
这应该是答案,因为它告诉我们要修复哪些目录以及如何修复它们。 它对我有用。如果您在 ubuntu 上清除了 apache2 和 wordpress,则您已重新应用这些权限 这个答案对我有用 谢谢!为我工作。我在 Windows 10 WSL2 中使用 WordPress docker 容器。 也为我工作【参考方案3】:运行您的 Web 服务器的用户无权写入 Wordpress 打算在其中创建插件目录的目录。您应该将相关目录分配给运行 Wordpress 的用户。它很可能不是 root。
简而言之,这是一个权限问题。您的 touch 命令正在工作,因为您以 root 身份使用它,并且 root 具有全局权限,可以在任何地方写入。
【讨论】:
很明显,但这并没有告诉我们要修复哪个目录。 @felwithe 显然对 OP 来说并不明显。 无论您认为对谁显而易见(即使错误消息字面意思是“无法创建目录”),它都不能回答问题。 很公平。我更想解释问题出在哪里,以便他了解将来如何解决此类问题。【参考方案4】:一个快速的解决方案是更改以下权限:
/var/www/html/wordpress/wp-content
/var/www/html/wordpress/wp-content/plugins
将其更改为775
。
安装后别忘了改回默认权限..:D
【讨论】:
对于没有 root 访问权限的用户的快速修复 在我的情况下,它更改了 wp-content 的权限,但不允许更改 wp-content 的插件【参考方案5】:我必须将/plugins
和/upgrade
的所有权交给服务器,仅此而已。
$ cd /var/www/wordpress/wp-content
$ sudo chown www-data:www-data /plugings
$ sudo chown www-data:www-data /upgrade
在 Ubuntu 18.04 上运行 Apache 服务器。也许以后需要更改更多目录。无论如何,我计划在完成编辑后恢复权限,正如this anwser 中所建议的那样。
【讨论】:
如果其他答案不能解决问题,试试这个! /upgrade 目录可疑!【参考方案6】:如果您使用 apt 安装了 wordpress,配置文件将被拆分到多个目录中。在这种情况下,您需要运行:
sudo chown -R -h www-data:www-data /var/lib/wordpress/wp-content/
sudo chown -R -h www-data:www-data /usr/share/wordpress/wp-content/
-h
开关也会更改符号链接的权限,否则用户 www-data
无法删除它们
【讨论】:
如何更改 cent os 服务器的权限【参考方案7】:要快速解决本地或生产上的插件和主题的权限问题,您只需运行此
sudo chmod 757 wp-content/themes
sudo chmod 757 wp-content/plugins
如果注意生产许可,你可以运行
sudo chown -R www-data:www-data wp-content/themes
sudo chown -R www-data:www-data wp-content/plugins
【讨论】:
【参考方案8】:如果有人使用共享主机并遇到同样的问题,则可能是磁盘空间问题。在这种情况下,请联系您的托管支持并要求他们增加您帐户的磁盘空间。
【讨论】:
同样的情况。所以清理一个空间【参考方案9】:CentOS7 或 Ubuntu 16
1.
WordPress 使用ftp
安装主题和插件。
所以ftpd
应该已经配置为create-directory
vim /etc/pure-ftpd.confg
如果是no,那么应该是yes
# Are anonymous users allowed to create new directories?
AnonymousCanCreateDirs yes
最后
sudo systemctl restart pure-ftpd
2.
父目录可能存在所有权问题。 如果是Apache Web Server
,则查找Web Server用户名和组名apachectl -S
它会打印出来
...
...
User: name="apache" id=997
Group: name="apache" id=1000
在 Ubuntu 上是
用户:name="www-data" id=33 not_used 组:name="www-data" id=33 not_used
然后
sudo chown -R apache:apache directory-name
3.
有时是因为目录权限。 所以试试
sudo chmod -R 755 directory-name
在某些情况下755
不起作用。 (应该,我不知道为什么)所以试试
sudo chmod -R 777 directory-name
4.
可能是因为php安全模式。 因此,请在您的域的根目录中关闭
vim php.ini
然后添加
safe_mode = Off
注意: 对于每次安装主题时不输入FTP用户名和密码,我们可以通过添加配置WordPress直接使用它
define('FS_METHOD','direct');
到 wp-config.php 文件。
【讨论】:
【参考方案10】:你需要更改目录的权限
首先更改用户HTML文件夹(替换您的计算机用户名)
sudo chown yourcomputerusername:yourcomputerusername /var/www/html
接下来更改用户的权限
cd /var/www/html
sudo chmod -R goa=rwx wordpress
或
sudo chmod -R 777 wordpress/wp-content
【讨论】:
【参考方案11】:如果你是 mac 用户,使用 XAMP
进入htdocs文件夹,在文件夹上打开终端,如截图所示
然后在终端输入以下命令
**sudo chmod -R 777 <your wordpress folder Name>/**
例如 sudo chmod -R 777 wordpress/
【讨论】:
【参考方案12】:我在 XAMPP for linux localhost 上,这对我有用:
sudo chown -R my-linux-username wp-content
【讨论】:
【参考方案13】:我每次创建 WordPress 项目时都会做的事情。在 /www/html
我在命令下运行
sudo chown www-data:www-data wordpress_folder_name -R
希望这会对某人有所帮助。
【讨论】:
【参考方案14】:对我来说,问题是 WP 用于上传更新的 FTP 服务器。它在配置中禁用了写入功能,因此只需启用它即可解决问题。
为 WordPress 提供这种误导性的错误信息感到羞耻。
【讨论】:
【参考方案15】:除了这个之外,以上都不适合我。
sudo chown daemon:daemon /opt/bitnami/apache/htdocs/
别忘了把/opt/bitnami/apache/htdocs/
改成你的目录
【讨论】:
【参考方案16】:你可以试试
sudo chmod goa=rwx -R /var/www/html
【讨论】:
你应该编辑你以前的答案(几乎一年前),而不是制作一个新的***.com/a/65486715/2308683【参考方案17】:Webserver 用户必须对目录具有写权限才能执行此类操作,因此您可以尝试将文件的所有者更改为 Webserver 用户(在此示例中为 apache
,但可以与您的不同)
chown -R apache YOUR_BLOG_DIRECTORY
【讨论】:
你能解释一下这是做什么的吗?【参考方案18】:要解决 ubuntu 服务器上的权限问题,您只需运行此
sudo chmod 777 -R 'wordpress wp-content file location'
例如。
sudo chmod 777 -R /usr/share/wordpress/wp-content
【讨论】:
这是个坏主意,777 允许所有用户和进程访问以写入这些文件。 这是你如何使用 chmod 的电话,我刚刚给出了解决方案 如果问题发生在您的本地,使用 777 即可。【参考方案19】:wordpressProject 是项目名称。
/var/www/html/wordpressProject sudo chmod -R 777 wp-content
谢谢。它会起作用的。
【讨论】:
永远不要设置 777 权限,除非你想被机器人入侵。【参考方案20】:一定是成功了!
使用这个chown -Rf www-data:www-data /var/www/html
【讨论】:
你不应该让网络服务器完全控制 webroot 中的文件。以上是关于Wordpress 插件安装:无法创建目录的主要内容,如果未能解决你的问题,请参考以下文章
WP安装后,添加插件和主题都不能正常安装——无法创建目录,请问是啥原因,要如何解决?
在 XAMPP 上运行的 wordpress 上的“无法创建目录”
wordpress 无法安装插件,不一定因为777权限,可能是用户组的问题