Wordpress 插件安装 - 无法连接到 FTP 服务器 - 最安全的解决方案?

Posted

技术标签:

【中文标题】Wordpress 插件安装 - 无法连接到 FTP 服务器 - 最安全的解决方案?【英文标题】:Wordpress Plugin Installation - Failed to connect to FTP Server - Safest Solution? 【发布时间】:2014-02-14 11:30:46 【问题描述】:

我使用 Wordpress 成功设置了 VPS LEMP 堆栈。当我尝试从 WP 后端安装插件时,系统会提示我以下消息:

To perform the requested action, WordPress needs to access your web server. 
Please enter your FTP credentials to proceed. If you do not remember your 
credentials, you should contact your web host.

当我输入我用来通过 FileZilla 访问服务器的 SFTP 帐户详细信息时,我收到以下错误消息:

Failed to connect to FTP Server 192.XXX.XXX.X:21

我阅读了varioustutorials,它建议安装一个 FTP 服务器,特别是 vsftpd,然后将您的 FTP-User-details 存储在 wp-config.php 中以避免进一步的身份验证请求。我看到的问题是,FTP 被视为severly unsecure,我想避免将我的用户详细信息硬编码到我的 WP 安装中。

解决此问题的最安全、推荐的方法是什么?

【问题讨论】:

如果您在 wp-content 中的插件文件夹上设置了写入权限,您将不会收到 FTP 消息 @JefferyAWooden 以下似乎解决了我的问题:sudo adduser <username> www-data sudo chown -R www-data:www-data /var/www sudo chmod -R g+rw /var/www @user3046831 谢谢你的帖子解决了我同样的问题。 Can I install/update WordPress plugins without providing FTP access?的可能重复 【参考方案1】:

我不知道这是否是最安全的方法。但是在 wp-config.php 中粘贴这段代码曾经解决了我的问题:

define('FS_METHOD', 'direct');

【讨论】:

这个方法为我解决了这个问题。但是,我还必须更改我的主题文件夹的权限,以便它可以创建所需的目录。 OP 没有选择它作为正确答案。这辈子愿望都不会实现T_T 这是有效的,但它带来了安全问题。这在the documentation at codex 中简要提及,但不幸的是,您在另一个 StackExchange 站点上转储a detailed answer 根据“所有最好的”文档,它说使用“​​define('FS_METHOD', 'ssh2');”但经过几个小时的调试后,我发现这条评论和“直接”对我有用。它区分大小写。【参考方案2】:

@MrNerdy,

我还应该详细说明应该有一些其他文件夹您想要授予权限的事实。阅读此处的文档以准确了解您应该如何处理安全问题:http://codex.wordpress.org/Changing_File_Permissions

另外,请注意只安装受信任的插件。我见过几十个网站因为编码错误的插件/主题等而被黑。祝你好运。

【讨论】:

+1 用于提醒@MrNerdy 的评论,应在答案部分添加。【参考方案3】:
sudo chown -R www-data:www-data wp_site_root
sudo chmod -R g+rw wp_site_root

解决了我的问题。

【讨论】:

我有一个 wordpress docker,克隆时需要通过这个命令授予权限......这对我们很有帮助......谢谢【参考方案4】:

对我来说,这是与 bitnami 相关的设置问题。这个post 帮助了我。可能有多种原因:

文件和文件夹的权限问题。 FS_METHOD 应该是 wp-config.php 文件中的“直接”。 如果您是,请从wp-config.php 中删除 FTP 配置 从bitnami 迁移以自行管理。

【讨论】:

【参考方案5】:

记得这样设置文件和目录的权限:

chown -R www-data:www-data /var/www
find /var/www/ -type d -exec chmod 755  \;
find /var/www/ -type f -exec chmod 644  \;

【讨论】:

仅适用于 Linux 服务器。【参考方案6】:

如果您使用共享主机,请删除服务器中的一些文件,然后重试。它会起作用的。这是因为您的磁盘配额可能已超出。

【讨论】:

【参考方案7】:

如果有人在使用 MAMP Pro 时遇到此问题。

确保您以拥有 wordpress 根目录权限的用户身份运行服务器。

SETTINGS > Ports 下查找“运行服务器为”,然后在下拉列表中选择有权访问根 wp 文件夹的同一系统用户。

【讨论】:

【参考方案8】:

define('FS_METHOD', 'direct');

在 wp-config 文件中添加上面给出的命令将解决该问题,将其粘贴到下面

define( 'WP_DEBUG', false );

【讨论】:

以上是关于Wordpress 插件安装 - 无法连接到 FTP 服务器 - 最安全的解决方案?的主要内容,如果未能解决你的问题,请参考以下文章

wordpress 无法安装插件,不一定因为777权限,可能是用户组的问题

Wordpress 无法连接到 mysql 服务器

WP七牛云插件详解 - WP-QINIU 插件(WordPress连接到七牛云存储)-原创

无法连接到 XAMPP 上的 FTP 服务器 (Mac)

wordpress 不能在线安装主题

Eclipse安装SpringBoot插件以及Eclipse无法连接到Eclipse Marketplace的解决方法