我想为我的traefik设置自定义错误页面。 我已经安装了IpWhitelist(https://docs.traefik.io/v2.0/middlewares/ipwhitelist/)中间件,它工作正常。但是如果失败,则会显示标准错误页面“禁止”。我想用自定义错误页面替换它。
我添加了另一个中间件错误(https://docs.traefik.io/v2.0/middlewares/errorpages/) 在404的情况下可以使用,我可以看到自定义错误页面。但是在Ipwhitelist失败的情况下,它仍显示标准的“禁止”(403)页面,而不显示自定义错误页面。我的设定范围是400-405
我认为一个中间件正在工作,或者我做错了什么。 我还想全局配置错误中间件,这样我就不必在环境中配置的每个IngressRouts上都指定。
traefik错误服务
apiVersion: v1
kind: Service
metadata:
name: traefikerror
namespace: namespacename
spec:
type: LoadBalancer
ports:
- name: http
targetPort: 80
port: 80
selector:
app: traefikerror
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: traefikerror
spec:
replicas: 1
selector:
matchLabels:
app: traefikerror
template:
metadata:
labels:
app: traefikerror
spec:
containers:
- name: traefikerror
image: imageId
ports:
- containerPort: 80
中间件
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: traefikerror
spec:
errors:
status:
- 400-405
query: /test.html
service:
name: traefikerror
port: 80
并在IngressRoute中设置此中间件。