社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Necevil

Necevil 最近创建的主题
Necevil 最近回复了
6 年前
回复了 Necevil 创建的主题 » Kubernetes nginx通过301而不是308进入HTTP到HTTPS重定向?

这些说明适用于Azure AKS用户,但对于Facebook/社交财产预览链接(显示为308永久重定向)的解决方案可能适用于任何云提供商(尽管尚未测试),您只需更改登录/获取凭据的方式等。

感谢Rico的解决方案!因为这只在Facebook上测试过,所以你可能会或者可能不想使用configmap应用程序路径(上面提到过),这将通过手动编辑configmap而不是使用 kubectl apply -f 应用本地保存的一个。

  1. 为您的cluser获取az证书( az login )
  2. 承担集群的角色: az aks get-credentials --resource-group yourGroup --name your-cluster
  3. 浏览群集: az aks browse --resource-group yourGroup --name your-cluster
  4. 导航到包含入口nginx容器的名称空间(不是后端服务),尽管它们可能在同一个ns中。
  5. 在左侧导航菜单(设置上方)上找到“configmaps”选项卡并单击它。
  6. 编辑yaml的“data”元素并添加以下行(注意键/值中名称和数字的引号): "data": { "some-other-setting-here": "false", "http-redirect-code": "301" } 除了最后一行之外,每个键/值行后面都需要一个逗号。
  7. 删除后重新启动nginx控制器盒 确保 您不会像我一样删除部署。
  8. 如果您想提高生产效率,可以升级nginx安装(从helm),该安装将通过以下方式在流程中重新启动/重新创建容器: helm upgrade ngx-ingress stable/nginx-ingress 其中,ngx entress是您的头盔安装的名称。还要注意,使用“--reuse values”标志将导致升级失败(请重新: https://github.com/helm/helm/issues/4337 )
  9. 如果您不知道您在安装时使用的Nginx名称,您可以使用 helm list 找到它。
  10. 最后,为了测试并确保您的重定向使用了正确的configmap代码,请将您的HTTP站点卷曲为: curl myhttpdomain.com 您应该收到这样的信息:

` `

<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.15.3</center>
</body>
</html>

` `

这里要注意的一件重要的事情是,如果你正在修改301,请重新直接尝试修复Facebook或其他社交媒体属性(Twitter等)的预览链接,那么很可能这不会修复任何链接到你已经链接到的任何页面/帖子,至少不会立即修复。

社交属性都使用强缓存来限制其资源使用,但您可以通过链接到以前未引用的新页面/文章来查看上面的内容是否修复了预览链接问题。

注意“post”的含义

因此,nginx entress使用代码308的主要原因是,在您发送POST请求的情况下,它会保持“body”(正文)/有效载荷不变(与使用浏览器进行的普通GET请求链接相反)。

对我来说,这不是一个问题,但是如果你出于任何原因将邮件发送到HTTP地址,并希望能够无缝地重新定向,那么在你切换到邮件中讨论的301重定向之后,这可能不起作用。

但是,如果你在发送帖子请求时没有期望一个无缝的重定向(我认为大多数人可能没有,我知道我没有),那么我认为这是修复Facebook 308永久重定向行为的最佳方法。