kubernetes-ingress Rewrite示例二

2023-05-05 09:27:47 浏览数 (1)

示例2:路径和请求头重写

假设您正在使用Kubernetes集群运行一个Web应用程序,该应用程序需要修改请求URI和请求头。如果您想将路径更改为/my-new-app,并将请求头X-Original-Path设置为原始路径,那么可以使用以下Ingress规则:

代码语言:javascript复制
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: complex-rewrite-example
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /my-new-app
    nginx.ingress.kubernetes.io/rewrite-annotation: $request_uri?&X-Original-Path=$uri
spec:
  rules:
  - http:
      paths:
      - path: /my-app
        pathType: Prefix
        backend:
          service:
            name: my-service
            port:
              name: http

在上面的示例中,我们使用了nginx.ingress.kubernetes.io/rewrite-target注释将/my-app路径重写为/my-new-app,同时使用了nginx.ingress.kubernetes.io/rewrite-annotation注释将$request_uri$uri添加到请求头中。因此,所有以/my-app开头的请求都将被重写为以/my-new-app开头,并将请求头X-Original-Path设置为原始路径。

0 人点赞