我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
当前回答
如果WordPress不能直接写入/wp-content,它只会在安装插件或WordPress更新时提示您输入FTP连接信息。否则,如果您的web服务器具有对必要文件的写访问权,它将自动负责更新和安装。这种方法不需要你有FTP/SFTP或SSH访问权限,但它需要你在你的web服务器上设置特定的文件权限。
它将按顺序尝试各种方法,如果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'或'ftpsockets',它将使用该方法。请记住,如果您将此设置为“direct”,但您的web用户(web服务器运行的用户名)没有适当的写权限,您将收到一个错误。
总之,如果你不想(或你不能)改变wp-content的权限,这样你的web服务器就有写权限,那么把这个添加到你的wp-config.php文件中:
define('FS_METHOD', 'direct');
权限说明如下:
http://codex.wordpress.org/Updating_WordPress#Automatic_Update http://codex.wordpress.org/Changing_File_Permissions
其他回答
是的,直接在WordPress中安装插件。
复制插件文件夹并粘贴到WordPress插件文件夹。 转到管理端(/test/wp-admin),然后转到插件链接,检查插件的名称。 激活插件,以便轻松安装插件。
其他选择
为插件代码创建zip文件。 转到管理端(/test/wp-admin),然后转到插件链接,然后单击add new,然后浏览插件zip文件夹,安装插件,然后出现激活插件选项,那么就激活插件,激活插件。
如果你使用Ubuntu,一个对我有效的快速解决方案是将所有权交给Apache用户(默认为www-data),如下所示:
cd your_wordpress_directory
sudo chown -R www-data wp-content
sudo chmod -R 755 wp-content
通常你可以把你的插件上传到wp-content\plugins目录。如果你不能通过SFTP访问这个目录,恐怕你会被卡住。
您可以在wp-config.php中添加以下内容
define('METHOD','direct');
这是youtube上的一个视频,解释了如何做到这一点。https://youtu.be/pq4QRp4427c
WordPress 2.7允许你直接上传一个zip文件(在插件页面底部有一个链接)——不需要FTP访问。这是2.7中的一个新特性,它只对插件有效(还不包括主题)。