在反向代理服务器 + Python HTTPS 服务器中,谁应该处理 HTTPS 连接的 SSL 证书?
In a reverse proxy server + Python HTTPS Server, who should handle SSL Certificates for HTTPS connections?
假设我想结合使用 NGinX(可能是另一个,因为它不代理 HTTP/2 请求)和 Hypercorn。由于两者都可以处理 SSL 证书文件,我想知道谁最适合为 HTTPS 请求执行此操作。 Hypercorn 可以监听 443 端口对我来说很重要,我不确定它是否可以在不指定 certfile 和 keyfile 参数的情况下做到这一点。
好吧,那取决于你想做什么。
最简单的解决方案是将两者都配置为使用 SSL。
Nginx 将接收请求,对其进行解密、处理,并将其作为 HTTPS 客户端发送到端口 443 上的 Hypercom。 Hypercom 将像任何普通的 HTTPS 客户端一样接收请求。
- 如果您的目标是安全:两者兼顾
- 如果你的目标只是为了不
直接公开 hypercom,您可以将其配置为不使用 SSL
默认情况下,Nginx 支持将请求代理到 HTTPS 上游,因此这是我认为的最佳解决方案。但是,您可能需要为 hypercom 设置 http-header,通过设置 X-Forwarded-For
、X-Forwarded-Host
和 Hypercom 可能需要的任何 headers 来正确了解谁是客户端。
假设我想结合使用 NGinX(可能是另一个,因为它不代理 HTTP/2 请求)和 Hypercorn。由于两者都可以处理 SSL 证书文件,我想知道谁最适合为 HTTPS 请求执行此操作。 Hypercorn 可以监听 443 端口对我来说很重要,我不确定它是否可以在不指定 certfile 和 keyfile 参数的情况下做到这一点。
好吧,那取决于你想做什么。
最简单的解决方案是将两者都配置为使用 SSL。
Nginx 将接收请求,对其进行解密、处理,并将其作为 HTTPS 客户端发送到端口 443 上的 Hypercom。 Hypercom 将像任何普通的 HTTPS 客户端一样接收请求。
- 如果您的目标是安全:两者兼顾
- 如果你的目标只是为了不 直接公开 hypercom,您可以将其配置为不使用 SSL
默认情况下,Nginx 支持将请求代理到 HTTPS 上游,因此这是我认为的最佳解决方案。但是,您可能需要为 hypercom 设置 http-header,通过设置 X-Forwarded-For
、X-Forwarded-Host
和 Hypercom 可能需要的任何 headers 来正确了解谁是客户端。