WordPress使用Cloudflare页面规则(防御CC攻击、提升网站访问速度)

Cloudflare作为全球最大的免费CDN加速,跟国内的优点就是不需要备案即可使用,而我们的Cloudflare默认只缓存图片之类的静态文件,很多网站使用Cloudflare加速效果不理想就是因为不会配置Cloudflare的Page Rules 页面规则,只要我们把Page Rules 配置好了,那么我们网站加速效果很牛,因为我们云搜网是基于Wordpress搭建的网站,这几天一直在调试Cloudflare的自定义页面规则缓存Page Rules,发现确实把 Page Rules 规则配置好了,网站访问速度飞快。

Cloudflare自定义规则的说明:

提示说明: 规则自定义指对“指定URL”进行页面级规则定制(支持通配符*)。可对任意子域名、目录、甚至单个URL进行针对性的加速缓存、安全防护等配置。列表中上下关系决定优先级,靠上规则优先级高。站长可以通过点击“↑”调整优先级。新增规则优先级最低,将于30s内生效。

URL指定支持通配符* 例如

1) 对www.diyizhuji.cn进行特定设置,需增加URL: https://www.diyizhuji.cn/wp-content/uploads/* 对网站 www.diyizhuji.cn/wp-content/uploads/ 的所有内容缓存生效;
2) 对www.diyizhuji.cn所有html页面进行特定设置,需增加URL: www.diyizhuji.cn/*.html 对网站 www.diyizhuji.cn的html 内容缓存生效;
3) 对www.diyizhuji.cn所有html页面进行全部缓存,需增加URL: www.diyizhuji.cn/* 对网站 www.diyizhuji.cn 的所有内容缓存生效;
4)对www.diyizhuji.cn所有评论页面禁止缓存直接回源,需增加URL:www.www.diyizhuji.cn/*/comment-page-* 对网站评论内容缓存不生效;

以下是设置的Wordpress Page Rules 页面规则:

https://www.diyizhuji.cn/*/comment-page-*   Cache Level: Bypass 评论不缓存直接回源
https://www.diyizhuji.cn/wp-admin/* Cache Level:Bypass 后台管理页面不缓存直接回源
https://www.diyizhuji.cn/*  Always Online: On, Cache Level: Cache Everything, Edge Cache TTL: 2 hours 全站所有内容缓存2小时

Cloudflare免费套餐只能设置3条规则,我们就只能设置后台和评论分页不缓存,其他一律缓存。其中还有个最关键的地方,Edge Cache TTL这个选项必须要设置一下,否则依然不会缓存的哦!Edge Cache TTL 缓存时间你可以设置30天或1天,最短为2个小时,如果网站没有什么更新,或者不需要用户登录的直接可以设置30天,这样可以减少服务器压力,加速用户的访问体验。

WordPress页面规则配置:

wp-admin 部分为管理后台,不加入缓存;
wp-login 部分为后台登陆页面,不加入缓存;
*/comment-page-* 用户评论,不加入缓存;
其余部分全部缓存;

以上的规则发现,这样我们需要4条规则,而免费的Cloudflare只能开启 Page Rules 3条规则,那么我们可以把wp-login 修改合并成一条规则;

可以安装插件 Rename wp-login.php ,修改登录页面 wp-login 网址为 wp-adminxxx,其中 xxx 为我们自定义的一串字符,比如 wp-adminabc 。

这样就可以通过 wp-admin* 来同时匹配前两条,将规则变为 3 条。

通过配置针对于 WordPress的页面规则,我们将全站进行缓存,设置网站永久在线等,并排除了管理后台、登录页面和文章文章评论页面的缓存,以便我们能够实时看到用户评论和正常登陆管理网站。