【发布时间】:2021-03-18 00:25:33
【问题描述】:
我使用 Traefik 作为代理,也有 react frotend 和 fastAPI 作为后端。我的后端是公开的。问题是 unvicorn 服务器将您从非尾随斜杠重定向到带有斜杠 https://api.mydomain.com/posts -> http://api.mydomain.com/posts/ 的 url,但它不适用于 ssl。所以,我在前端遇到了关于 CORS 和混合内容的错误。基于这个主题FastAPI redirection for trailing slash returns non-ssl link 我添加了 --forwarded-allow-ips="*" 到 uvicorn 服务器,现在 ssl 重定向工作,但据我了解它不安全。我尝试添加 --forwarded-allow-ips="mydomain.com" 但它不起作用,我不知道为什么“mydomain.com”是服务器的 ip,所以然后是我的代理的 ip。我认为这是因为我的 api 从 docker 网络获取代理 IP,不知道如何解决。
【问题讨论】:
-
哇,好久没有答案了。我有类似的情况,但是在 docker 容器中使用 nginx web 服务器,在另一个容器中使用 web 应用程序。
-
我修复了对 traefik 容器使用静态 IP 的问题,并将其添加到 forwarded-allow-ips 中。不确定这种方法是否足够好
-
哇,我不知道任何 traefik 项目。看起来很神奇。无论如何,我确信它可以用 NGINX 和 uvicorn 完成