You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何配置Nginx Ingress将accounts.example.com请求转发到Pod的/accounts子路径

Nginx Ingress 路径前缀自动拼接配置方案

你可以通过Nginx Ingress的rewrite-target注解实现需求,完整配置示例如下:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: accounts-ingress
  annotations:
    # 核心配置:指定转发到后端的目标路径规则
    nginx.ingress.kubernetes.io/rewrite-target: /accounts/$1
spec:
  ingressClassName: nginx # 请替换为你集群实际使用的IngressClass名称
  rules:
  - host: accounts.example.com
    http:
      paths:
      - path: /(.*)
        pathType: Prefix
        backend:
          service:
            # 请替换为对接目标Pod的Service名称
            name: accounts-service
            port:
              # 请替换为Service暴露的端口号
              number: 80

注意:Ingress无法直接对接Pod,请先创建匹配目标Pod标签的ClusterIP类型Service,再替换上述配置中的Service信息。

配置逻辑说明

  • 路径规则path: /(.*)会捕获accounts.example.com域名下所有请求的路径部分,存入捕获组$1
  • rewrite-target注解会将捕获到的路径拼接到/accounts/之后,再转发到后端Pod
  • 匹配效果:
    • 用户请求accounts.example.com/test → 转发到Pod的/accounts/test
    • 用户请求accounts.example.com/api/v2/user/info → 转发到Pod的/accounts/api/v2/user/info

生效验证

配置提交到集群后,执行以下命令查看规则是否正常加载:

kubectl describe ingress accounts-ingress

无报错即可直接请求域名验证转发效果。

内容的提问来源于stack exchange,提问作者Markus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 15:24:02