首页 > 其他 > 详细

「NGINX Ingress Controller」- 修改默认重定向状态码 @20210417

时间:2021-04-17 22:53:09      阅读:40      评论:0      收藏:0      [点我收藏+]

问题描述

在NGINX Ingress Controller中,开启强制SSL跳转之后,当访问HTTP时将被重定向到HTTPS地址。

但是在IE 8浏览器中无法进行跳转…………

问题原因

因为IE 8浏览器不支持308状态码。同时「Permanent redirect 308 not supported in IE11 #1825」指出IE 11浏览器也不支持308状态码。

当使用308状态码时,在重定向POST请求时可以保留“有效载荷”(有效载荷,简单理解成POST请求的数据即可)。

解决办法

只能修改返回状态码。这需要修改Nginx的ConfigMap对象,添加http-redirect-code: "301"配置。

配置文件结构大致如下:

apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
  name: nginx-configuration
  namespace: ingress-nginx
data:
  http-redirect-code: "301"

相关文章

「Kubernetes」- mandatory.yaml (modified)
「Kubernetes」- service-nodeport.yaml
「Kubernetes」- example.yaml

参考文献

Permanent redirect 308 not supported in IE11 #1825
Change default redirect to 301 to support old internet explorer versions #2002
Kubernetes Nginx Ingress HTTP to HTTPS redirect via 301 instead of 308?
NGINX Ingress Controller/ConfigMaps/http-redirect-code


「NGINX Ingress Controller」- 修改默认重定向状态码 @20210417

原文:https://www.cnblogs.com/k4nz/p/14671964.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!