大概自从 WordPress 有了自动升级和安装插件/主题的功能,需要填写 FTP 信息的问题应该就存在了,这些功能真的非常方便。整理了一下网上出现的针对此问题的主要解决方法。

一般情况下,虚拟主机很少会出现这样的情况。但是如果使用 VPS 或者 DV 的话,这种情况就会比较多了。由于 WordPress 是基于文件的所有者来判断的,如果你的服务器的用户名和文件的用户名不是一样的,那么 WordPress 就会让你通过 FTP 来进行更新。

下面是整理的三种方法:

方法1:拷贝下面的代码到 wp-config.php 中的“?>”之前

/** Override default file permissions 改写默认的文件权限 */
if(is_admin()) {
add_filter('filesystem_method', create_function('$a', 'return "direct";' ));
define( 'FS_CHMOD_DIR', 0751 );
}

方法2:将 FTP 相关信息定义到 wp-config.php 中,即将下面代码修改后拷贝到 wp-config.php 中的“?>”之前

//* 添加 FTP 信息,防止每次都提示输入
define('FTP_HOST', 'ftp.yoursite.com'); //主机名,即服务器域名或IP,如果不行试下ftp://ftp.yoursite.com
define('FTP_USER', 'Your_FTP_Username'); //FTP或SSH用户名
define('FTP_PASS', 'Your_FTP_password'); // FTP用户密码
//如果你的 FTP 可以使用 SSL 连接,把下面设置为 True
define('FTP_SSL', true);

方法3:针对有高级管理权限的用户,如服务器或 VPS 等管理员,需要将 php 和网站目录设置成同一个用户组即可,一般是 www 用户组跑 php,所以就将网站所在目录内所有文件夹和文件设置成www用户组所有,用root登录SSH,进入网站所在目录,输入命令:

chown -R www 目录 //设置目录下所有文件和目录为www用户所有
chgrp -R www 目录 //设置目录下所有文件和目录为www用户组所有

标签: WordPress

博主的文章或程序如果给您带来了价值,感谢您打赏一二

添加新评论