Fel*_*ger 1 dns reverse-proxy heroku cloudflare netlify
我正在使用Cloudflare管理域的DNS。
Netlify托管了的营销页面。
主应用程序由Heroku托管。
cloudflare +裸域(my-example.com)是否有可能由Netlify提供服务的某些路径以及由Heroku提供的其他路径?
还是我被迫将托管服务之一放在子域上?
免责声明:我为Netlify工作。
您绝对可以在不运行自己的服务器或支付任何额外费用的情况下执行此操作。
由于Netlify已经有了CDN,因此将cloudflare的CDN(在其设置中使用“橙色云”激活)放在Netlify的前面是次优的。除了效率低下外,这样做还破坏了Netlify的原子部署和回滚,并且减慢了我们观察到的页面服务。它可能有效,但不建议这样做。但是,CloudFlare的DNS相当出色,可以在没有CDN的情况下使用(关闭“橙色云”)。他们的DNS可与Netlify CDN上托管的内容很好地配合使用。
这是通过Netlify进行设置以实现此目的的方法。
Netlify的代理(技术上是反向代理)可以连接到您想要的任何后端,并且不向访问者显示URL-看起来像访问者(浏览器中的URL栏,HTTPS连接),就好像他们已连接到我的示例一样。整个时间都是com,但是内容是从后端返回的(包括HTTP状态代码。如果由Cache-Control:Heroku应用发送的HTTP标头指令指示,则此响应将缓存在Netlify的CDN上。请注意,CloudFlare会在以下位置更改您的Cache-Control标头)如果您将其设置在他们要代理的内容上(Netlify不会)。
这是一个常见的设置:
/main/* https://yourapp.herokuapp.com/main/:splat 200!
/app/* https://yourapp.herokuapp.com/main/:splat 200!
请注意,如果将/ main或/ app下的ANY资产部署到Netlify,则由于!遵循这些规则而将被忽略。有关其工作原理和替代方法的更多详细信息,请参见https://www.netlify.com/docs/redirects/#note-on-shadowing(TL;DR:在Netlify上部署/main/logo.png之类的内容,但是Heroku应该提供的服务与在Heroku上为/ main / *部署所有所需内容无关。
请注意,我建议在Netlify和Heroku(/main/*)上使用相同的路径,而不是使用代理,/somethingelse/*因为路径匹配时,调试资产加载更加容易。不过,这不是必需的。
| 归档时间: |
|
| 查看次数: |
815 次 |
| 最近记录: |