我们在Azure AKS上运行几个K8S集群。
服务(ghost blog)位于nginx入口的后面,并通过letsencrypt的证书进行保护。所有这些都可以正常工作,但重定向行为正是我遇到的问题。
< Buff行情>
入口正确地从
http://whatever.com
to重新定向
https://whatever.com
_;问题是它使用308
重定向用户在任何时候共享的所有文章/页面元
从网站上翻页。
< /块引用>
该问题导致在大多数社会财产上共享网站任何页面的用户收到“预览链接”,其中页面标题和页面元预览不起作用,取而代之的是“308永久重定向”文本,如下所示:
从
ingress nginx docs over here
我可以看到这是预期的行为(即308 redirect),我认为不是预期的是与社会共享的交互。服务当这些服务尝试创建页面预览时。
虽然问题将通过默认情况下直接指向https站点的Facebook(或Twitter等)解决,但我目前没有办法强制这些站点查找将用于创建预览的内容的https。
设置永久重新定向代码
我还可以看到,看起来我应该能够将重定向代码设置为我想要的任何东西(我相信301重定向将允许Facebook等。要正确地提取post/page snippet meta),
docs on that found here
。
问题是,当我按指定方式添加重定向代码注释时:
nginx.ingress.kubernetes.io/permanent-redirect-code:“301”
< /代码>
尽管我能够(从我的kubectl代理服务器)看到重定向代码注释正确应用,但我仍然可以在我的资源上获得308个重定向。作为参考,我的入口注释的完整列表如下:
apiVersion:extensions/v1beta1
种类:入口
元数据:
姓名:幽灵入口
注释:
kubernetes.io/tls-acme:“真”
nginx.ingress.kubernetes.io/permanent-redirect-code:“301”
< /代码>
< Buff行情>
重申一下,我的问题是:通过自定义错误代码强制重定向到HTTPS的正确方法是什么(在我的案例301中)?
< /块引用这很好,但是重定向行为是我遇到的问题。
入口正确地从http://whatever.com到
https://whatever.com__问题是使用308
重定向用户在任何时候共享的所有文章/页面元
网站的网页。
该问题导致在大多数社会财产上共享网站任何页面的用户收到“预览链接”,页面标题和页面元预览不起作用,取而代之的是“308永久重定向”文本,如下所示:
从ingress-nginx docs over here我可以看到,这是预期的行为(即308重定向),我认为这不是预期的,当这些服务试图创建页面预览时,与社会共享服务的交互。
虽然这个问题可以通过默认情况下直接指向https站点的facebook(或twitter等)来解决,但我目前没有办法强制那些站点查找用于创建预览的内容的https。
设置永久重新定向代码
我还可以看到,看起来我应该能够将重定向代码设置为我想要的任何东西(我相信301重定向将允许Facebook等。要正确地提取文章/页面片段meta),请执行以下操作:docs on that found here.
问题是,当我按规定添加重定向代码注释时:
nginx.ingress.kubernetes.io/permanent-redirect-code: "301"
尽管我能够(从我的kubectl代理服务器)看到重定向代码注释正确应用,但我仍然可以在我的资源上获得308个重定向。作为参考,我的入口注释的完整列表如下:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ghost-ingress
annotations:
kubernetes.io/tls-acme: "true"
nginx.ingress.kubernetes.io/permanent-redirect-code: "301"
重申一下,我的问题是:通过自定义错误代码强制重定向到HTTPS的正确方法是什么(在我的案例301中)?