我可以在不提供 FTP 访问的情况下安装/更新 WordPress 插件吗?

更新于 2021年12月25日 wordpress教程

我在我的实时服务器上使用 WordPress,它仅使用 SSH 密钥使用 SFTP。

我想安装和升级插件,但您似乎需要输入您的 FTP 登录名才能安装插件。 有没有办法通过手动上传文件而不是让 WordPress 处理整个过程来安装和升级插件

解决方案

如果 WordPress 无法直接写入/wp-content它只会在尝试安装插件或 WordPress 更新时提示您输入 FTP 连接信息。 否则,如果您的 Web 服务器具有对必要文件的写访问权限,它将自动处理更新和安装。 此方法不需要您具有 FTP/SFTP 或 SSH 访问权限,但需要您在网络服务器上设置特定的文件权限。

它将按顺序尝试各种方法,如果 Direct 和 SSH 方法不可用,则回退到 FTP。

https://github.com/WordPress/WordPress/blob/4.2.2/wp-admin/includes/file.php#L912

WordPress 会尝试将临时文件写入您的/wp-content目录。 如果成功,它会将文件的所有权与其自己的 uid 进行比较,如果匹配,它将允许您使用“直接”方法安装插件、主题或更新。

现在,如果由于某种原因您不想依赖自动检查要使用的文件系统方法,您可以在wp-config.php文件中定义一个常量'FS_METHOD' ,即'direct', 'ssh', 'ftpext' or 'ftpsockets' ,它将使用该方法。 请记住,如果您将其设置为“direct”,但您的网络用户(运行网络服务器的用户名)没有适当的写入权限,您将收到错误消息。

总之,如果您不想(或不能)更改 wp-content 的权限以便您的 Web 服务器具有写入权限,请将其添加到您的 wp-config.php 文件中:

define('FS_METHOD', 'direct');

权限解释在这里:

如前所述,所有烫发修复都不再起作用。 您需要相应地更改权限并将以下内容放入您的wp-config.php

define('FS_METHOD', 'direct');

只是想补充一点,您绝不能将wp-content权限或任何文件夹的权限设置为777

这是我必须做的:

1)我将wordpress文件夹的所有权(递归)设置为apache用户,如下所示:

# chown -R apache wordpress/

2)我将wordpress文件夹的组所有权(递归)更改为apache组,如下所示:

# chgrp -R apache wordpress/

3) 赋予所有者对该目录的完全权限,如下所示:

# chmod u+wrx wordpress/*

这完成了工作。 我的wp-content文件夹有755权限,顺便说一句。

TL;DR 版本:

# chown -R apache:apache wordpress
# chmod u+wrx wordpress/*
  1. wp-config.php添加define('FS_METHOD', 'direct');
  2. 使服务器可写目录wp-content/ , wp-content/plugins/
  3. 安装插件(将插件目录复制到wp-content/plugins目录中)。

在版本 3.2.1 上工作

打开wp-config.php文件并添加以下行:

define('FS_METHOD', 'direct');

这对我有用……谢谢

只需快速更改wp-config.php

define('FS_METHOD','direct');

就是这样,在没有 ftp 的情况下享受您的 wordpress 更新!

替代方法:

有一些主机会阻止这种方法工作以简化您的 WordPress 更新。 幸运的是,还有另一种方法可以防止这种害虫提示您输入 FTP 用户名和密码。

同样,在 wp-config.php 文件中的 MYSQL 登录声明之后,添加以下内容:

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

php_mod更改为启用cgiSuEXEC fastcgi ( ISPConfig用户)。 为我工作。

如果不起作用,请尝试以rootsudo用户身份将wp-content更改为775

chmod -R 775 ./wp-content

然后添加到wp-config.php

define('FS_METHOD', 'direct');

祝你好运

为了能够使用 SSH2 进行更新和主题上传,您必须生成 SSH 密钥并安装 PHP SSH 模块。 然后 WordPress 会检测到您有可用的 SSH2,并且您会在上传/升级时看到不同的选项 (SSH2)。

1.) 确保为 debian 安装了 PHP 模块,它是:

sudo apt-get install libssh2-php

2.) 生成 SSH 密钥,添加密码是可选的:

ssh-keygen
cd  ~/.ssh
cp id_rsa.pub authorized_keys

3.) 更改权限,以便 WordPress 可以访问这些密钥:

cd ~
chmod 755 .ssh
chmod 644 .ssh/*

现在,您将在执行上传/升级/插件时获得 SSH2 选项。WP SSH 连接

4.) 为了更方便,您可以在wp-config.php设置默认值,这将在 WordPress 上传窗口中预先填充 SSH 凭据。

define('FTP_PUBKEY','/home/<user>/.ssh/id_rsa.pub');
define('FTP_PRIKEY','/home/<user>/.ssh/id_rsa');
define('FTP_USER','<user>');
define('FTP_PASS','passphrase');
define('FTP_HOST','domain.com');

‘passphrase’ 是可选的,如果你没有在ssh-kengen设置密码; 然后不要在wp-config.php添加它

这解决了我的问题。 而且我根本不需要做chown 。 但是我在其他地方看到过这种方法的引用。

参考:

通常你可以将你的插件上传到wp-contentplugins目录。 如果您无法通过 SFTP 访问此目录,恐怕您会被卡住。

您可以通过在命令提示符下键入以下命令来轻松获取它

sudo chown -R www-data:www-data your_folder_name

或将以下代码复制并粘贴到 wp-config.php 文件中。

define('FS_METHOD', 'direct');

其中“your_folder_name”是您的 WordPress 安装在此文件夹中的文件夹。

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

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

你可能还喜欢下面这些文章

WordPress会员发文控制插件,控制发文数量、分类和状态WordPress会员发文控制插件,控制发文数量、分类和状态

使用教程全局角色权限控制在菜单->发文控制中选择全局控制,点击添加,即可进入权限添加页,如下图:可以为某个角色添加一条权限。其中展示了用户的发文权限信息,如下图:在这里你可以控制任意一个用户的发文权限,点击设置权限即可。

WordPress安装插件的几种方法(五种简单的方法让你在WordPress中轻松安装插件)WordPress安装插件的几种方法(五种简单的方法让你在WordPress中轻松安装插件)

三、通过FTP安装插件如果插件无法通过WordPress仪表盘或WordPress插件目录安装,你可以通过FTP方式安装插件。本文介绍了五种简单的方法在WordPress中安装插件,包括通过WordPress仪表盘、WordPress插件目录

如果文件夹不存在,则创建一个文件夹如果文件夹不存在,则创建一个文件夹

//developer.wordpress.org/reference/functions/wp_mkdir_p/。它返回上传目录路径并创建一个文件夹(如果尚不存在)。

PHP Warning: POST Content-Length of 8978294 bytes exceeds the limit of 8388608 bytes in Unknown on line 0PHP Warning: POST Content-Length of 8978294 bytes exceeds the limit of 8388608 bytes in Unknown on line 0

你可以从这个路径找到php.ini文件。已经重新启动了您的网络服务器。中找到重新启动您的服务器将有助于它开始工作。文件,然后在文件搜索中使用此代码更改不要忘记重新启动xampp使用。

WordPress  如何安装插件WordPress 如何安装插件

在本章中,我们将学习如何安装WordPress的插件。以下是在WordPress中安装插件的简单步骤。与插件名称相关的插件列表将显示为如以下屏幕中所示。一旦激活,您将在插件列表中看到安装的插件,如下面的屏幕所示。

WordPress 插件设置WordPress 插件设置

点击Browse,它会返回到您可以从WordPress网站选择插件的页面。plugin以激活该插件以在WordPress中使用,如下面的屏幕所示。Plugins中,您只需在已安装的文本框中输入您的插件名称,然后点击Search。

wordpress单本小说imwpnovel使用说明书wordpress单本小说imwpnovel使用说明书

错误代码为0,表示主题的目录没有可写权限,请将wp-content/themes/imwpnovel-dist目录设置为可写权限(775),等待绑定完成之后再将该目录设置为只读权限(755).错误代码为-1,这种情况可能是你的网站绑定了多个域

wp-admin 显示空白页,如何解决?wp-admin 显示空白页,如何解决?

但是专业人士会告诉你,你需要得到一个彼得您的所有问题现在都已解决,只需按照以下说明操作:转到您的主题然后取消激活您当前的主题,只需在主题名称的第一个字母中输入“x”即可。