如何使用 docker 在 Heroku 上运行 https 服务器?

时间:2021-01-29 00:18:52

标签: .net docker heroku webapi

我有一个 .net core 3.1 web api,我将它包装在一个 docker 镜像中,以便在 heroku 上发布。作为标准,我为我的服务器启用了 HTTPS 和从 HTTP 重定向到 HTTPS。它既可以作为独立组件使用,也可以在 docker 中使用。

当 Heroku 出现时,问题就出现了。我可以访问我的应用程序,但看起来 HTTP 端口是 heroku 路由器选择的端口,我自然会获得重定向(状态 307): 2021-01-28T23:39:23.806237+00:00 heroku[router]: at=info method=GET path="/matches" host=stg-inform-web-api.herokuapp.com request_id=xxx fwd="xxx" dyno=web.1 connect=0ms service=6ms status=307 bytes=192 protocol=https

我该如何处理?对于我的服务器的此基础架构设置,我是否真的在内部不需要 https?

1 个答案:

答案 0 :(得分:0)

Heroku 负责部署您的应用程序,提供主机名 (myapp.herokuapp.com) 和 SSL(通过 HTTPS 访问)。
您需要确保您的 Web 应用程序可以绑定到 Heroku 在运行时分配的端口,这在 $PORT 环境变量中提供。

Web 层由 Heroku 提供,因此您的应用程序只需要接受 HTTP 请求。

相关问题