如何在kubernetes nginx入口控制器API对象中配置本地化URL

如何在kubernetes nginx入口控制器API对象中配置本地化URL,kubernetes,kubernetes-ingress,azure-aks,nginx-ingress,Kubernetes,Kubernetes Ingress,Azure Aks,Nginx Ingress,我在Azure AKS中有一个具有1个节点的群集 在这个集群上,我有两个后端服务 每个后端服务都是一个web应用程序 我有一个域名mydomain.com 每个应用程序都需要在入口对象中配置自己的路径规则 Web应用程序1s(我们将其称为主页应用程序)目标URL需要为以下任一项: US version of the site: mydomain.com Swedish version of the site: mydomain.com/se/sv-sv/hem Any other locati

我在Azure AKS中有一个具有1个节点的群集

在这个集群上,我有两个后端服务

每个后端服务都是一个web应用程序

我有一个域名mydomain.com

每个应用程序都需要在入口对象中配置自己的路径规则

Web应用程序1s(我们将其称为主页应用程序)目标URL需要为以下任一项:

US version of the site: mydomain.com
Swedish version of the site: mydomain.com/se/sv-sv/hem 
Any other location/language version of the site: mydomain.com/xx/yy-xx/abcdefgh
Web应用程序2(我们称之为whitepony应用程序)的目标URL需要为以下任一项:

US version of the site: mydomain.com/us/en-us/whitepony
Swedish version of the site: mydomain.com/se/sv-sv/whitepony
Any other location/language version of the site: mydomain.com/xx/yy-xx/whitepony 
(无论位置/语言如何,whitepony应用程序目标路径段称为whitepony)

现在回答我的问题

如何在入口API对象中配置这些规则

我可以在路径规则中使用前缀吗

还是我需要使用正则表达式

美国版主页应用程序的特例是什么,我没有使用任何前缀/额外的URL段

我可以在入口对象中使用条件吗

或者,您将如何配置入口资源对象以满足上述所有要求

请注意,我知道并且已经成功地使用入口对象中的路径规则配置了多个后端服务


但是没有前缀或额外的URL段。

我不会给出如何在入口资源中指定规则以满足您的要求的完整工作示例,我希望与您分享一些提示:

  • 是的,您需要正则表达式来实现它,这是直接使用基于wordpress多语言站点示例的NGINX指令实现它的示例

  • 您不需要使用注释定义这些重写规则,您可以通过在ConfigMap中提供适当的内联NGINX config文件来使用纯NGINX config样式,这就是如何实现这一点的示例


  • 我希望这将对您有所帮助

    关于如何在ingress资源中指定规则以满足您的需求,我不会给出完整的工作示例,我希望与您分享一些提示:

  • 是的,您需要正则表达式来实现它,这是直接使用基于wordpress多语言站点示例的NGINX指令实现它的示例

  • 您不需要使用注释定义这些重写规则,您可以通过在ConfigMap中提供适当的内联NGINX config文件来使用纯NGINX config样式,这就是如何实现这一点的示例


  • 我希望这将对您有所帮助

    感谢ConfigMap提示。感谢ConfigMap提示。