我正在查看似乎在firebase托管上运行的https://material-ui-next.com
并在其上使用CloudFlare。
这提出了一个问题。 firebase托管网站是否需要额外的层来处理DDoS保护?据我所知,firebase提供开箱即用的SSL,CDN,DDoS和缓存?什么时候想要在其上添加CloudFlare?
答案 0 :(得分:6)
在部署我们的网站(https://mfy.im)时,我们遇到了类似的争论。但是,我们决定使用没有CloudFlare的Firebase托管
主要原因是表现:
使用Firebase config json我能够配置我之前在CloudFlare中做过的大部分事情。
但是,如果您不太关心性能,我建议将Firebase与CloudFlare一起使用,原因如下:
编辑:我已从Firebase托管转移到Netlify
答案 1 :(得分:2)
对于希望将 Cloudflare 或其他 CDN 置于 Firebase 前面的任何人 - 请记住,Firebase 只会看到一个 IP 发出大量请求,因此可能会决定阻止该 IP。我不确定这是否是最近发生的事情,但以下是 Google 支持人员对此事的(傲慢)回应:
<块引用>我们参与该问题的专家建议我们升级 我们与其中一位 Firebase 工程师合作。
工程师提到我们 CloudFlare 集成是有限的 Firebase 托管已经通过 Firebase CDN [1] 提供内容 并且不鼓励在顶部添加第二个 CDN,因为它实际上可以带来 降低网站性能。
这导致我们无法允许使用 cloudflare IP。
编辑:如果您有兴趣这样做,Google 已在此处打开“功能请求”以将 CDN IP 列入白名单/停止阻止:
https://issuetracker.google.com/issues/185590945?pli=1
如果您希望它更快解决,请给它加星标。
答案 2 :(得分:0)
我们把 Fastly 放在了 firebase 前面。我们把它放在功能和托管的前面。
我们使用重写器指向函数来完成此操作,然后我们请求 Fastly 执行强制覆盖以正确拉取托管域(我们未找到站点)。
使用 Fastly 从 Firebase 提取数据运行良好。我们获得了额外的日志记录、对 WAF 的控制等。
我们不必在 Firebase 中设置自定义域来实现这一点,但我们必须允许 Fastly 使用 CORS 设置进行调用。