如何才能阻止WordPress在进行更新时提示我输入ftp信息?

时间:2010-08-11 作者:artlung

如何阻止WordPress在更新时提示我输入FTP信息

5 个回复
最合适的回答,由SO网友:artlung 整理而成

如果你编辑你的wp-config.php 您可以将这些FTP设置预加载为WordPress读取的常量。请记住,在共享主机上,您应该注意可能的安全影响。See Editing wp-config.php 了解更多信息

您的设置会有所不同,但这些对我和我的主机设置都适用。我包含了一些未使用的常量,前缀为:

define(\'FS_METHOD\', \'direct\');
define(\'FTP_BASE\', \'/usr/home/username/public_html/my-site.example.com/wordpress/\');
define(\'FTP_CONTENT_DIR\', \'/usr/home/username/public_html/my-site.example.com/wordpress/wp-content/\');
define(\'FTP_PLUGIN_DIR \', \'/usr/home/username/public_html/my-site.example.com/wordpress/wp-content/plugins/\');
// define(\'FTP_PUBKEY\', \'/home/username/.ssh/id_rsa.pub\');
// define(\'FTP_PRIKEY\', \'/home/username/.ssh/id_rsa\');
define(\'FTP_USER\', \'my-ftp-username\');
define(\'FTP_PASS\', \'my-ftp-password\');
define(\'FTP_HOST\', \'ftp.my-site.example.com\');
// define(\'FTP_SSL\', false);
SO网友:pixeline

检查你的文件所有权。当apache运行的用户可以写入wordpress目录时,集成升级过程就可以在没有ftp的情况下运行。FTP凭据用于如果web服务器对您的文件没有正确的权限,wordpress会提示您输入FTP详细信息,并尝试使用这些凭据将文件传输回其所在的服务器,以便能够写入所需的文件

SO网友:Ardee Aram

WordPress似乎不仅会检查目录是否可写,还会检查Apache用户OWNS 目录(或者至少,如果Apache用户拥有其创建的临时文件)。在/wp admin/includes/file中观察这些代码行。php:get_filesystem_method():

if ( $temp_handle ) {
    if ( getmyuid() == @fileowner($temp_file_name) )
        $method = \'direct\';
    @fclose($temp_handle);
    @unlink($temp_file_name);
}
因此,一个快速的解决方案是发出此命令并将整个Wordpress安装的所有权授予Apache:

sudo chown -R www-data wordpress/
其中www数据是Apache用户,wordpress当然是您的wordpress安装文件夹

我在这里进一步记录了我的解决方案:https://ardeearam.wordpress.com/2013/02/03/solved-wordpress-asking-for-ftp-credentials-when-upgrading/

SO网友:itmonitor

在Centos 7 PHP7服务器上,通过EasyApache4微调Apache 2.4以提高网站加载速度时,我启用了mod_pagespeed。启用后,它将自动禁用mod_ruid2和mod_cgi(并启用其他两个模块)。禁用mod\\u pagespeed时,它不会自动重新启用mod\\u ruid2-它只会重新启用mod\\u cgi。如果没有mod\\u ruid2,Wordpress将请求FTP凭据

无需硬编码wp config。php或将文件权限(危险地)设置为777。只需手动启用mod_ruid2,重启Apache,FTP/文件权限问题就解决了。Wordpress和插件现在可以像往常一样更新,媒体也可以上传到Wordpress gallery。它马上就可以工作了

我刚刚检查过,当从MPM Prefork更改为Worker时,它将禁用mod_ruid2。当从Worker恢复到Prefork时,它不会启用mod_ruid2,从而导致本文中描述的问题

在这两种情况下,关键是检查并启用mod\\u ruid2

希望能帮上忙

SO网友:th3penguinwhisperer

1)I couldn\'t agree 因为它是too generic

1a)我只是不想递归地改变我所有文件的所有权(比如用猎枪杀死一个穆斯林)。尤其是之前这项工作做得很好

Wordpress有一个“鬼鬼祟祟”的功能,就是突然向你索要ftp的凭据,所以我开始利用Ardee Aram的his线索进行深入挖掘。我去查档案了。php文件并检查其所有权。似乎是文件。php依赖于它自己的所有权(错误地设置为root)

Fix:chown www文件。php注意:用您的发行版或设置替换www(您可以使用ps aux | egrep“php | http”,并在第一列中查看其所有权。我希望这可以帮助其他人避免对此感到沮丧。我甚至不明白为什么wordpress一开始不“抱怨”,然后建议使用FTP替代方案。现在它就像一个“功能”这一点突然被引入

结束

相关推荐

Updates for a private plugin?

如果我写一个私有插件,有没有办法使用WordPress自动更新机制来更新它 我想封装这个功能,但它是我自己的5个博客特有的,所以它不是公共插件资源的好候选。但我喜欢这种简单的更新机制 有没有办法做到这一点