Ingress子路径无法路由至Spring后端服务问题咨询
问题:Ingress子路径路由失败排查
现象
访问根路径/可正常跳转至项目UI,但其他子路径无法正确路由,返回404错误。
相关配置与测试信息
Ingress配置
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: kubernetes.io/ingress.class: nginx meta.helm.sh/release-name: ingress meta.helm.sh/release-namespace: default creationTimestamp: "2022-11-26T15:57:15Z" generation: 1 labels: app.kubernetes.io/managed-by: Helm name: ingress-service namespace: default resourceVersion: "53584" uid: fccbcc20-e365-42cd-be29-0fff80611ddc spec: rules: - host: project.k8s.com http: paths: - backend: service: name: project-backend port: number: 8080 path: /api/ pathType: Prefix - backend: service: name: project-backend port: number: 8080 path: /api/general/details/ pathType: Prefix - backend: service: name: project-backend port: number: 8080 path: /api/general/ pathType: Prefix - backend: service: name: project-ui port: number: 8080 path: / pathType: Prefix status: loadBalancer: ingress: - ip: xxx.xxx.xx.x
测试命令及结果
# 子路径请求返回404 curl http://xx.xxx.xxx.xx/api/general/detail -H "Host: project.k8s.com" {"timestamp":"2022-11-27T14:29:31.899+00:00","status":404,"error":"Not Found","path":"/api/general/detail"} # 根路径可正常访问UI curl http://xx.xxx.xxx.xx/ -H "Host: project.k8s.com"
Spring后端日志
Tomcat started on port(s): 8080 (http) with context path '/api'
疑问
- 后端服务集群外测试通过,控制器使用
@RequestMapping("api/general/detail/"),Ingress日志也能看到请求记录,判断后端服务运行正常是否正确? - 除查看日志、检查Ingress配置、执行
kubectl get all外,还有哪些排查方向?
内容的提问来源于stack exchange,提问作者furion2000
相关产品推荐
相关产品推荐

