解决WordPress网站开启cloudflare代理后无法访问登陆页面和管理后台的问题

今天我们的wordpress网站被别人恶意采集了,导致服务器的cpu飙升到100%,严重影响了网站正常用户的访问,于是就选择接入cloudflare,开启防护!

开启Under Attack 模式后效果立竿见影。但是过了几个小时发现一个问题,就是为登陆用户在访问登陆 or 注册页面的时候打不开,浏览器提示重定向次数过多!

已经登陆的用户,是可以访问/wp-admin/ 目录的,不受影响。 这个问题也不是所有的wordpress网站只要使用cloudflare代理就会出现的,我们的另一个wp网站一直都是使用的cloudflare代理,从来没有出现过这个问题。

所以这个问题就很奇怪了,经过简单搜索发现了下面三种解决办法:

第一种:安装cloudflare官方插件

直接在wordpress管理后台安装并启用这个插件就可以解决,如果你现在无法访问wordpress的管理后台可以修改你本机的hosts文件,强制解析你的域名到你的源服务器(不访问cloudflare代理服务器)

插件地址:Cloudflare – WordPress 插件 |WordPress.org

第二种:不使用 “灵活” SSL/TLS 加密模式

这个就更简单了,只需要在cloudflare的控制台修改一下SSL/TLS 加密模式就可以了,如果你的源站已经启用了ssl就选择完全模式。如果你的源站只支持http访问就选择关闭模式。修改后秒生效!

第三种:添加一行PHP代码

这个也比较简单,十分适合了解代码知识的朋友,只需要打开 wp-config.php 这个文件插入下面的代码就可以了:

//标头重写以防止在启用 Cloudflare 的通用 SSL 时出现重定向循环
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
      $_SERVER['HTTPS']='on';
庄朋龙
庄朋龙

一个爱生活的技术菜鸟

留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注