我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
当前回答
从php_mod更改为fastcgi,启用cgi和SuEXEC (ISPConfig用户)。对我有用。
如果不工作,尝试将wp-content更改为775作为root或sudo用户:
chmod -R 775 ./wp-content
然后添加到wp-config.php:
define('FS_METHOD', 'direct');
祝你好运
其他回答
是的,你能做到。
你需要加上
define('METHOD','direct');
在wpconfig中。 但是这种方法并不可取,因为它存在安全隐患。
谢谢,
当你没有权限在/wp-content目录上写内容时,WordPress不允许你通过WordPress管理仪表板上传任何插件的唯一原因。请记住,您的wordpress目录/wp-content需要0755权限级别。 有多种方法可以更改文件夹的权限级别。
使用cPanel更改文件权限:
进入文件管理器,打开你的wordpress网站应该在的公共HTML文件夹,或者如果你的网站在其他文件夹中,打开网站根目录。在你的WordPress根目录导航到wp-content文件夹;在wp-content文件夹行的末尾,最后一个框包含此文件夹的文件权限。确保将文件夹权限级别编辑为0755,就完成了。
使用SSH终端修改文件权限:
在你的终端找到WordPress站点的根目录,在我的例子中是/var/www/html,所以要移动到WordPress根目录,输入以下命令:
cd /var/www/html
现在你在WordPress根目录中,需要的文件夹/wp-content就在这里。因此,要更改文件权限键入以下命令:
sudo chmod wp-content 755
这将更改您的/wp-content目录文件权限为0755。
现在你不会得到通过FTP上传wordpress插件的错误信息。
将以下代码添加到wp-config中
define('FS_METHOD', 'direct');
FS_METHOD强制使用文件系统方法。只能是direct、ssh2、ftpext或ftpsockets。通常,只有在遇到更新问题时才应该更改此选项。如果你改了也没用,那就改回来/去掉。在大多数情况下,如果自动选择的方法不起作用,将其设置为'ftpsockets'将正常工作。
(主要偏好)“direct”迫使它从PHP内部使用直接文件I/O请求,这在配置不佳的主机上充满了安全问题,这是在适当的时候自动选择的。
(二级偏好)“ssh2”是强制使用SSH PHP扩展如果安装
(第三优先)“ftpext”是强制使用FTP PHP扩展进行FTP访问,最后
(4日偏好)“ftpsockets”使用PHP套接字类进行FTP访问
欲了解更多信息,请访问:http://codex.wordpress.org/Editing_wp-config.php#WordPress_Upgrade_Constants
只是对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");
WordPress 2.7允许你直接上传一个zip文件(在插件页面底部有一个链接)——不需要FTP访问。这是2.7中的一个新特性,它只对插件有效(还不包括主题)。