Kubernetes istio将非www流量重定向到www

Kubernetes istio将非www流量重定向到www,kubernetes,istio,Kubernetes,Istio,我正在使用istioingress网关。如何将非www流量重定向到www apiVersion: networking.istio.io/v1alpha3 kind: Gateway metadata: name: my-gateway namespace: some-config-namespace spec: selector: app: my-gateway-controller servers: -

我正在使用istioingress网关。如何将非www流量重定向到www

    apiVersion: networking.istio.io/v1alpha3
    kind: Gateway
    metadata:
    name: my-gateway
    namespace: some-config-namespace
    spec:
    selector:
        app: my-gateway-controller
    servers:
    - port:
        number: 80
        name: http
        protocol: HTTP
        hosts:
        - uk.bookinfo.com
        - eu.bookinfo.com
        - www.uk.bookinfo.com
        - www.eu.bookinfo.com
        tls:
        httpsRedirect: true # sends 301 redirect for http requests
    - port:
        number: 443
        name: https-443
        protocol: HTTPS
        hosts:
        - uk.bookinfo.com
        - eu.bookinfo.com
        - www.uk.bookinfo.com
        - www.eu.bookinfo.com
        tls:
        mode: SIMPLE # enables HTTPS on this port
        serverCertificate: /etc/certs/servercert.pem
        privateKey: /etc/certs/privatekey.pem

目前,我可以使用两个端点访问该网站。但是,我想将所有流量从非www重定向到www。

Istio网关接收流量,并且从那里的路由将由VirtualService配置处理。对于您的非www到www流量路由,在Istio讨论论坛中提出了相同的问题,因此这可能对您有所帮助


至于获取所有流量,您可能希望在网关配置(ref:)中的主机定义中使用通配符。

您是否尝试过Istio的重定向功能

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: server-vs
spec:
  hosts:
  - mysite.com
  gateways:
  - my-gateway
  http:
  - match:
    - uri:
        exact: /
    redirect:
      uri: /
      authority: www.mysite.com
您还可以在DNS级别执行重定向。但我认为一些域名提供商不支持它。例如,戈达迪就是这样