Wordpress无法安装插件:无法找到WordPress插件目录

时间:2013-12-19 03:57:54

标签: wordpress wordpress-plugin

我无法在Centos 6 VPS上安装插件。当我尝试安装时,我得到了这个:

Installing Plugin: BotDetect WordPress CAPTCHA 3.0.Beta1.7

Downloading install package from
[web path to:]botdetect-wp-captcha.zip…
Unpacking the package…
Could not create directory.
Return to Plugin Installer

更新:这似乎与权限有关 - 我猜有些组织wordpress需要成为更改文件夹,创建文件等的一部分,但我无法弄清楚是什么该组应该是。我没有www-data组 - 我在某处读到了有关此要求的内容。有人可以告诉我WP需要存在哪些组和权限?

更新:我已经对我的插件进行了chmodded并将文件夹上传到777.我还创建了一个专门用于Wordpress的FTP用户,并使该用户的主目录与建议{Word 3}的Wordpress根文件夹相同}。然后我在wp-config.php文件中更改了这些行:

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__ . "/"));

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

为:

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
    define('ABSPATH', dirname(__FILE__));

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . '/wp-settings.php');

这应该消除HERE提到的双斜杠冲突。

注意 - 我在上传媒体时遇到了问题,但问题已经通过chmod解决为777。

现在,当我尝试安装插件时,我得到了这个:

Unable to locate WordPress Plugin directory.<br>
Return to Plugin Installer

更新: 根据我的建议,我已经在我的wordpress目录中运行chown -R并将我的wp-config.php文件还原为:

/** Absolute path to the WordPress directory. */
if ( !defined('ABSPATH') )
        define('ABSPATH', dirname(__FILE__) . "/");

/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

我的权限看起来像这样。我还有问题。

[root@ip-MY_IP/wordpress]# ls -l
total 180
-rw-r--r--  1 apache apache   418 Dec 16 07:07 index.php
-rw-r--r--  1 apache apache 19929 Dec 16 07:07 license.txt
-rw-r--r--  1 apache apache  7183 Dec 16 07:07 readme.html
drwxr-xr-x  2 apache apache  4096 Dec 17 14:57 tmp
-rw-r--r--  1 apache apache  4892 Dec 16 07:07 wp-activate.php
drwxr-xr-x  9 apache apache  4096 Dec 16 07:07 wp-admin
-rw-r--r--  1 apache apache   271 Dec 16 07:07 wp-blog-header.php
-rw-r--r--  1 apache apache  4795 Dec 16 07:07 wp-comments-post.php
-rw-r--r--  1 apache apache  3087 Dec 16 07:07 wp-config-sample.php
-rw-r--r--  1 apache apache  3124 Dec 19 06:10 wp-config.php
drwxr-xr-x  6 apache apache  4096 Dec 18 21:03 wp-content
-rw-r--r--  1 apache apache  2932 Dec 16 07:07 wp-cron.php
drwxr-xr-x 12 apache apache  4096 Dec 16 07:07 wp-includes
-rw-r--r--  1 apache apache  2380 Dec 16 07:07 wp-links-opml.php
-rw-r--r--  1 apache apache  2359 Dec 16 07:07 wp-load.php
-rw-r--r--  1 apache apache 31909 Dec 16 07:07 wp-login.php
-rw-r--r--  1 apache apache  8235 Dec 16 07:07 wp-mail.php
-rw-r--r--  1 apache apache 10880 Dec 16 07:07 wp-settings.php
-rw-r--r--  1 apache apache 25665 Dec 16 07:07 wp-signup.php
-rw-r--r--  1 apache apache  4026 Dec 16 07:07 wp-trackback.php
-rw-r--r--  1 apache apache  3015 Dec 16 07:07 xmlrpc.php

6 个答案:

答案 0 :(得分:13)

您遇到的问题是文件的所有权。该文件夹由与Web服务器不同的用户拥有,因此WP无法为您尝试下载的插件创建目录。

您对wp-config.php所做的更改需要撤消。

然后SSH进入您的服务器并运行:

sudo chown -R apache:apache /path/to/wordpress/dir

如果您的配置不同,请将apache替换为不同用户的apache:

答案 1 :(得分:4)

好的,我根据上面的建议想出来了。这就是我解决这个问题的方法:

  1. 我创建了一个名为ftpusers的组。

    groupadd ftpusers

  2. 我将wordpress用户添加到此论坛。

    usermod -a -G ftpusers wordpressuser

  3. 我将wordpress文件夹的所有权递归更改为我的wordpress用户:group。

    chown -R wordpressuser:ftpusers wordpress

  4. Voila - 我的包已安装。

答案 2 :(得分:2)

有助于在wp-config.php文件上设置ftp访问。正如本文所述。

https://digwp.com/2010/11/ftp-in-wpconfig/

define('FS_METHOD', 'ftpext');
define('FTP_BASE', '/yourftpfolder/');
define('FTP_USER', 'youruser');
define('FTP_PASS', 'yourpassword');
define('FTP_HOST', 'yourhost.com');
define('FTP_SSL', false);

答案 3 :(得分:1)

  • 首先,确保您的WP公用文件夹归Apache用户所有(取决于您的系统,它应该是apache或www-data):

sudo chown -R apache:apache /path/to/wordpress

  • 然后编辑vsftpd.conf文件

sudo vim /etc/vsftpd.conf

  • 并确保包含&#39; write_enable&#39;的行取消注释,其值设置为“是”&#39;

... write_enable=YES ...

答案 4 :(得分:1)

在我的例子中,wp-content目录只有一个plugins.old目录。我创建了一个插件目录并运行&#34; chmod wwwrun:www plugins /&#34;获取插件安装。运行opensuse leap 42.2。

答案 5 :(得分:-1)

只需尝试chown R apache:apachewordpress目录或entire public directory

相关问题