为了减少 CORS 的问题并能够使用一个 SSL 证书,我想用一个域运行所有 flynn 应用程序:
我的“外部”服务
- https://example.com/ - 前端 SPA(静态、HTML/javascript)
- https://example.com/api/v1/ * - API (Python/Django)
- https://example.com/admin/ - Django 管理员
- https://example.com/docs/ - SwaggerUI(静态,HTML/Javascript)
- https://example.com/static/ - 用户上传的所有静态文件
内部服务
- 雷迪斯
- postgres
$ flynn 路线(示例)
http:api.service.example.com api
http:frontend.service.example.com frontend
http:docs.service.example.com docs
...
为了简单起见,我的想法是使用 NGINX 作为反向代理来处理路由和 SSL 处理——但是我应该把它放在哪里呢?
我可以添加一个 NGINX 作为一个 flynn 应用程序,它监听 example.com,然后使用location
和proxy_pass
功能。但是当 NGINX 从https://example.com反转到http://frontend.service.example.com我这里没有 SSL - 对吗?
如何确保 NGINX 仅在“内部”路由?flynn 是否有更好的方法 - 或者只是使用 dokku。