我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
我在我的live服务器上使用WordPress,它只使用SSH密钥的SFTP。
我想安装和升级插件,但似乎需要输入FTP登录来安装插件。有没有一种方法可以通过手动上传文件来安装和升级插件,而不是让WordPress来处理整个过程?
当前回答
您可以通过在命令提示符上键入以下命令很容易地获得它
sudo chown -R www-data:www-data your_folder_name
或者复制并粘贴以下代码到您的wp-config.php文件中。
define('FS_METHOD', 'direct');
“your_folder_name”是你的WordPress安装在这个文件夹中的文件夹。
其他回答
只是对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");
只是想补充一点,你绝对不能将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;博士版:
# chown -R apache:apache wordpress
# chmod u+wrx wordpress/*
这里有一个简单的方法。
执行以下命令。
这将为Apache启用mod_rewrite模块
$sudo a2enmod rewrite
这个命令将更改文件夹的所有者为www-data
$sudo chown -R www-data [Wordpress Folder Location]
执行以上命令后,您可以在没有FTP的情况下安装任何主题。
您可以在wp-config.php中添加以下内容
define('METHOD','direct');
这是youtube上的一个视频,解释了如何做到这一点。https://youtu.be/pq4QRp4427c
当你没有权限在/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插件的错误信息。