WordPress 网站,在用Cloudflare的CDN(小云朵DNS代理)时, 总会出现各种问题。
这篇文章,用在宝塔面板下,如何申请免费的SSL,并把域名托管在Cloudflare,使用Cloudflare的免费CDN,给讲清楚。
第一步,域名托管在Cloudflare
域名首先托管在Cloudflare, 并关闭小云朵DNS代理
第二步,宝塔面板申请免费的ssl
Let’s Encrypt 是免费的SSL,在宝塔面板->网站->设置->SSL->免费证书->申请证书->部署

强制Https 保持关闭

第三步,修改wp-config.php
在 /* That’s all, stop editing! Happy publishing. */ 这一行字之前,插入以下代码:
// 修复 Cloudflare 灵活 SSL/Full SSL 导致的登录循环
if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') {
$_SERVER['HTTPS'] = 'on';
}
// 强制后台使用 HTTPS(既然你已经装了证书)
define('FORCE_SSL_ADMIN', true);
这个动作,确保你能登录后台wp-admin
第四步,Cloudflare操作
回到Cloudflare,把 DNS 的小云朵点亮(变为橙色);
进入 SSL/TLS -> Overview , 将模式改为 Full 或者 Full (Strict);
进入SSL/TLS -> Edge Certificates,开启 Always Use HTTPS;
第五步,安装Better Search Replace插件
在工具->Better Search Replace 中,搜索 所有http://www.您的域名 ,替换成https://www.您的域名ok