我在后端发起的呼叫中遇到 https 重定向问题。我有一个具有以下设置的 Nginx 入口控制器:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-sample
annotations:
kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/affinity: cookie
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
spec:
rules:
- http:
paths:
- path: /
backend:
serviceName: sample
servicePort: 8080
当客户端通过浏览器访问页面时它工作正常 - 它使用 https 与负载均衡器联系,并且从负载均衡器到集群中 pod 的流量使用 HTTP(因此 SSL 在 LB 级别终止,客户端被迫使用HTTPS)。但是,当我尝试从我的 Java 应用程序调用使用 HTTP 的 URL(就像客户端正在做的那样)时,我希望被自动重定向到 HTTPS。我收到正确的响应(308 永久重定向),但我的呼叫不会自动转移到 https。是否缺少一些注释?