Discourse 与 Cloudflare

:+1:

(我们需要一个选项来对帖子的某一部分做出反应/点赞;我不知道该怎么做——但那样的话,就不会有写这种无意义帖子的理由了…… :wink:

你特别提到了性能。在我的引用中,我特别提到了带宽节省。这是两件不同的事情,不同的人会给予不同的重视程度。

理查德,Communiteq 的链接含糊不清。基本上就是说不要使用 Cloudflare。

为什么不说,如果你使用 Cloudflare,请使用这些设置?把它说清楚。我认为 oopsyscoops 也是这个意思。除了“不要使用”之外,还有一些标准。如果关闭性能并允许缓存图像,似乎就可以了。不过我不是这方面的专家,所以才问你。我只是想了解这个问题的两面。

你说缓存“meh”?如果真是这样,那为什么还要使用 CDN。它们缓存/存储你的文件在远程位置,以便用户可以从他们所在的地区更快地下载。更不用说,还能节省源带宽和服务器负载。

这是那些以 Discourse 管理为生的人给出的建议。

因为这似乎会不时变化。例如,我一直在努力维护帮助人们使用 Mailgun 的说明。

Cloudflare 不像 CDN。它是不同的东西。如果你使用 CDN,那么 Discourse 会使用 CDN 来缓存需要缓存的内容。它不会让 CDN 去猜测如何工作。

除非你的社区很可能成为 DDoS 攻击的目标,否则 Cloudflare 并不是一个好主意。

我用 bunny.net 托管了很多网站,它便宜又方便,但不是免费的。

3 个赞

我对此表示赞赏。

我最近才开始为我们的 WordPress 网站使用 Cloudflare,运行 APO 带来了巨大的速度提升。不幸的是,在我即将推出 Discourse 论坛时,WP-Discourse 插件的评论计数无法正常工作,无论我使用哪种页面缓存产品。我们的论坛甚至不在 Cloudflare (仅 DNS) 上。

我第二个推荐 Bunny,我们目前将其用于视频。

4 个赞

3 篇帖子已合并到现有主题:广告显示给不应看到的信任级别?

我在这场讨论中缺少的是对“哪些”Cloudflare功能会引起问题的区分。
到目前为止,我读到的所有内容都一致地将Cloudflare仅仅称为CDN,但就目前而言,Cloudflare是一家公司,也是其不同功能(SASE、网络服务、零信任、分析等)的平台名称。
如果Cloudflare的缓存或优化部分引起了最多的问题,那就应该明确指出。
但是,为什么仅仅因为Cloudflare Tunnel与Cloudflare Access都带有“Cloudflare”这个名字,就应该忽视它们可以极大地提高Discourse实例的安全性呢?

这正是讨论的内容。它与他们的任何其他产品无关。它只是关于 Discourse 是否能在你的网络浏览器中运行。当讨论开始时,他们主要只有 CDN。

此讨论仅暗示是关于Cloudflare平台CDN部分的内容。目前安装的用户并不知道,10年前的Cloudflare(除了少数其他功能外)只有CDN。

因此,如果此帖旨在劝阻Discourse管理员启用Cloudflare中的CDN功能,那么您应该清楚地说明,这才是我的全部观点。

否则,“所有”用户将远离使用Cloudflare的其他功能,而只使用CDN,这没有意义,仅仅因为此帖将“Cloudflare”松散地用作“Cloudflare CDN、缓存和优化”的同义词。

1 个赞

我不知道任何人怎么会认为讨论的内容与 CDN 无关。这里的 OP 说

他们没有说“Cloudflare CDN 服务”,但我认为他们指的是这个 pretty clear。老实说,我不知道其他任何服务是否与 Discourse 是否工作有关。

让我们在此说清楚。Cloudflare 不是 CDN。他们称其服务的一项功能为 Cloudflare CDN,但从根本上说,它并非如此。

通常与 Discourse 交互的两个元素是他们的 DNS(很好,甚至不错)以及他们的反向代理——在使用其 DNS 产品时出现的橙色云。

反向代理可以缓存上传(这还可以),但也会干扰传递到浏览器的 JavaScript 有效负载(通常不好,这也是我们在此讨论的元素)。作为反向代理,它还会增加客户端和服务器之间所有通信的延迟,这直接影响用户体验。

Cloudflare 隧道在 meta 的其他地方被提及,并且适用于其所强调的应用程序。

4 个赞

感谢 @Stephen 提供我所指出的清晰信息。

这难道不是与 CDN 的核心优势相悖吗?我的意思是,通过从邻近地区提供文件,让全球用户更快地加载资源?

是的,这是传统的解释。Cloudflare 确实拥有庞大的网络和广泛的覆盖范围,但这并不能阻止其代理在一定程度上减慢通信速度。

一旦 Let’s Encrypt 颁发了证书,启用橙色云并没有真正的问题,前提是您禁用其性能功能并接受增加的延迟。正如我们上面所说,如果您需要隐藏您的服务器 IP 或想要缓存 /uploads,它会很有用。它只是不像有些人声称的那样是万能的。

4 个赞

据我所知,Let’s Encrypt 始终可以通过 HTTPS 访问 Web 服务器以进行 HTTP-01 挑战,即使前面有 Cloudflare 通用 SSL 证书,因此不必等到 LE 证书颁发后再开启橙色云。

我建议尝试一下——这是我们这里一个常见的支持话题。

如果 Cloudflare 在初始证书颁发之前被启用,Let’s Encrypt 将会失败。

Discourse-setup 也不会添加 Cloudflare 模板,我通常建议在初始构建完成后同时处理这两者。

1 个赞

实际上,我做到了,我所有的公共 Web 应用都通过 Cloudflare Tunnel 运行,而 Cloudflare Tunnel 必须启用橙色云才能运行,而且所有应用都能在根本没有端口 80 和 HTTP 的情况下接收初始 LE 证书。

Cloudflare tunnel 是一个不同的产品。它不会让事情变得更快。它完全不同。

是的。但这并不是我和斯蒂芬谈论的内容。我也从未说过“加快速度”之类的话。我添加了一个例子,说明在什么情况下,即使启用了橙色云,也可以颁发 LE 证书,因为我亲身经历过它是有效的。

看起来你说得对,Cloudflare 现在拥有足够多名称相似但用途截然不同的产品,以至于帮助使用 Cloudflare 的任何人都会非常令人困惑。Install Discourse on a residential internet with Cloudflare Tunnel 是一个非常具体且有据可查的用例,这与 99% 讨论 Cloudflare 的主题所谈论的内容大相径庭。它其实不应该出现在这个话题中。