【问题标题】:Cloudflare page rules wildcard cache bypass not workingCloudflare 页面规则通配符缓存绕过不起作用
【发布时间】:2015-05-13 09:04:32
【问题描述】:

我在登录 Wordpress 时遇到问题,这给了我错误:

"Cookie 被您的浏览器阻止或不支持。您必须启用 使用 WordPress 的 cookie"

除非我在 Cloudflare 上进入“开发模式”。

Cloudflare docs 建议 *example.or/wp-admin*,但这并没有捕获 wp-login,所以我遇到了 cookie 问题。

所以我正在尝试*example.org/wp-*in,我认为它应该匹配 wp-login 和 wp-admin。

我也将规则放在顶部,因为它是最具体的。下面的两条规则是:

example.org/events/* - 绕过缓存。似乎工作正常。

example.org/* 缓存所有内容,始终开启。再次,似乎工作。

我唯一能想到的是,你不能在像我这样的东西中间使用通配符,但我在文档中找不到任何建议,我无法添加两个单独的规则,因为我只得到 3 个。

谢谢。

【问题讨论】:

    标签: wordpress cloudflare


    【解决方案1】:

    这只是缺少如此明显的东西的情况。

    我的规则是 https://example.com/wp-*in 但这显然与 https://example.com/wp-admin/ 不匹配或 https://example.com/wp-admin/edit.php

    当然,正确的规则是https://example.com/wp-*in*/*,这解决了我们的问题。

    【讨论】:

    • 你应该选择这个作为答案 - 我相信你只需要 example.com/wp-in 作为规则。
    • https://example.com/wp-*in*/* 这与https://example.com/wp-login.php 不匹配。另外,这将匹配以 wp- 开头并在 URL 中某处有 in 的所有内容,这似乎不是一个好的做法。
    【解决方案2】:

    解决了我的问题。

    嗨,今天早上我在登录时遇到了同样的问题。

    "Cookie 被您的浏览器阻止或不支持。您必须启用 使用 WordPress 的 cookie"

    我还发现通过登录 cloudflare 并进入“开发模式”可以解决问题。 (感谢您在原始帖子中提到这一点,它帮助我弄清楚下一步该往哪里看)。

    现在我昨天对 cloudflare 所做的唯一更改是我的页面规则之一(主域页面规则)。

    我对本节所做的更改是对 Edge cache expire TTL 的设置。昨天我已将其从 -Respect All Existing Headers- 更改为 -4 小时-。

    今天早上我将“Edge cache expire TTL”设置改回 -Respect All Existing Headers- 我现在可以正常登录了。 :)

    我希望这对你也有帮助。

    仅供参考我为 cloudflare 使用 3 规则设置。

    Rule#1 = *example.com/wp-admin* 
    Rule#2 = *example.com/*preview=true* 
    Rule#3 = *example.com/*
    

    基本上规则#1 和#2 绕过后台和页面预览的缓存。规则 #3 缓存网站上的所有其他内容。

    【讨论】:

    • 谢谢@Stephen。你的方法也有效,但另外,如果它们看起来像我的一样,请仔细检查你的规则。因为我犯了一个如此简单而愚蠢的错误 - 请参阅我的答案以获得解决方案。
    • 谢谢@digitaltoast。我为 cloudflare 使用 3 规则设置。我已经包含了一个我使用的规则的例子,它对我很有效。添加到我的原始评论中,因为我无法在此评论部分输入星号。
    【解决方案3】:

    这看起来很奇怪。你开过支持票吗?我们真的不会做任何会引发这种情况的事情:

    ""Cookie 被您的浏览器阻止或不支持。您必须启用 cookie 才能使用 WordPress""

    【讨论】:

    • 是的,我们周二早上开了一张票,但我不知道免费计划的时间表是什么,所以我想我也把它扔在这里!那么,您是说 *example.org/wp-*in 应该为 wp-login 和 wp-admin 绕过 cloudflare 吗?但它仍然显示 cloudflare 标头。嗯....
    • 使用 PageRules 绕过缓存等并不意味着它实际上会绕过我们的代理,所以你仍然会在标题中看到 CloudFlare。
    猜你喜欢
    • 2016-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-08
    • 1970-01-01
    • 2018-08-20
    • 2019-12-16
    • 1970-01-01
    相关资源
    最近更新 更多