繁体   English   中英

Nginx 400,一个简单的 http 响应被发送到带有 nginx-ingress controller 的 HTTPS 端口

[英]Nginx 400, A plain http response was sent to HTTPS port with nginx-ingress controller

我使用来自 Artifact Hub ( https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx ) 的 helm chart 在 aws eks 集群中部署了一个 nginx-ingress controller。

我已经编辑了在 aws 中使用 NLB 的注释,如果在入口 controller 后面部署了 ingress-nginx 和应用程序之后,NLB 后面的应用程序工作正常但服务于非安全模式(无 ssl),然后我更改了监听器nlb 的端口从 tcp 到 tls,并附上 ssl 证书。

现在,在进行此更改后,我的应用程序能够在 ssl 上运行,但出现错误“Nginx 400,一个普通的 http 响应已发送到 HTTPS 端口”

有人可以帮助我理解这个问题和解决这个问题的可能选择。

值和配置几乎是我们从这里获取的默认值“https://artifacthub.io/packages/helm/ingress-nginx/ingress-nginx”

如果您从 ACM(AWS 证书管理器)在LB级别附加 SSL/TLS 证书

您必须创建两个侦听器,端口80TCP和端口443TLS将必要的证书附加到TLS侦听器中。

您还可以阅读更多内容: https://aws.amazon.com/premiumsupport/knowledge-center/terminate-https-traffic-eks-acm/

在上面的示例中,它使用的是CLB ,但是相同的步骤将适用于NLB ,以通过 LB 附加证书。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM