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

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


当前回答

WordPress 2.7允许你直接上传一个zip文件(在插件页面底部有一个链接)——不需要FTP访问。这是2.7中的一个新特性,它只对插件有效(还不包括主题)。

其他回答

试试这个检查是否给wp-content文件夹正确的权限。

编辑wp-config.php添加以下行

define('FS_METHOD', 'direct');

Chmod“wp-content”目录到www-data进行完全访问。

现在尝试安装插件。

WordPress 2.7允许你直接上传一个zip文件(在插件页面底部有一个链接)——不需要FTP访问。这是2.7中的一个新特性,它只对插件有效(还不包括主题)。

在我的例子中,我在RHEL 8.6上运行Apache。移动文件(而不是复制文件)导致我的wordpress根文件夹的selinux上下文错误。禁用selinux允许我重新安装插件。但是,由于这是一个生产服务器,我希望selinux处于强制模式。通过运行这个命令来恢复wordpress根目录的默认selinux上下文,我能够解决这个问题。

restorecon -vR /var/www/html/

您可以参考此链接,了解解决与selinux相关的任何问题的其他方法。

只是对wp-config.php进行了快速更改

define('FS_METHOD','direct');

就是这样,享受你的wordpress更新没有ftp!

替代方法:

有一些主机会阻止这种方法工作 来简化您的WordPress更新。幸运的是,还有另一种方法 防止这个害虫提示您输入FTP用户名和密码。 同样,在wp-config.php文件中的MYSQL登录声明之后, 增加如下内容:

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

如果你使用Ubuntu,一个对我有效的快速解决方案是将所有权交给Apache用户(默认为www-data),如下所示:

cd your_wordpress_directory
sudo chown -R www-data wp-content
sudo chmod -R 755 wp-content