我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。

我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?


当前回答

请添加define('FS_METHOD','direct');在wp-config.php

其他回答

方法1: 你可以这样设置: 1. 在wp-config.php中,您需要编写这些行。

define('FS_METHOD', 'direct'); 

注意:把这个放在define('DB_CHARSET', 'utf8mb4')之后。

设置wp-content权限或权限递归775完全权限 你可以通过filezilla传播。写点击目录>权限>检查读写和执行,并检查递归到子目录

方法2:

或者你也可以设置这个

define("FTP_HOST", "localhost");
define("FTP_USER", "yourftpusername");
define("FTP_PASS", "yourftppassword");

您可以在wp-config.php中添加以下内容

define('METHOD','direct');

这是youtube上的一个视频,解释了如何做到这一点。https://youtu.be/pq4QRp4427c

可以使用SFTP或SSH在WordPress中自动更新插件,但你需要有ssh2 pecl扩展。您可以通过下面的教程了解如何做到这一点

设置ftp或SFTP连接或chmod 777是除了本地环境以外的任何方法。即使打开SFTP方法也会带来更多不必要的安全风险。

所需要的是这些目录的所有者对/wp-content/uploads & /wp-content/plugins/的可写权限。(linux ls -la将显示你的所有权)。

apache默认运行用户为www-data。

Chmod 777允许机器上的任何用户编辑这些文件,而不仅仅是apache/php线程用户。

如果您还没有使用SFTP,它将从外部来源引入另一个可能的故障点。而你只需要本地用户运行apache/php进程就可以完成这个目标。

没有看到任何人提出这些观点,所以我想我将提供这些信息,以帮助解决我们不断出现的在线WP安全问题。

我们使用SFTP和SSH(在我们的开发服务器和活动服务器上),我也尝试过(虽然不是很难)使用WordPress上传功能。我同意Toby的观点,将你的插件上传到wp-content/plugins目录,然后从那里激活它们。