最简Traefik代理配置访问返回404 page not found问题排查
问题原因
你的Traefik配置路由规则仅精确匹配根路径/,但Voila服务返回的页面包含大量子路径资源(如静态JS/CSS文件),这些子路径请求到达Traefik时因不匹配路由规则,直接返回404;即使是根路径请求,后续资源加载也会失败。
修改方案
将路由规则从Path(/)替换为PathPrefix(/),让所有以/开头的请求都匹配该路由,确保所有页面资源请求都能转发到Voila服务。
修改后的完整配置:
entryPoints: http: address: ":8900" http: routers: boards: rule: "PathPrefix(`/`)" service: boards services: boards: loadBalancer: passHostHeader: true servers: - url: "http://localhost:48900"
补充说明
PathPrefix(/)会匹配所有根路径及子路径请求(如/static/main.js、/api/data等),确保Voila服务的所有资源都能通过Traefik正常访问。- 无需额外配置路径剥离(
stripPrefix),因为Voila服务本身基于根路径提供资源,完整转发路径即可正常响应。
内容的提问来源于stack exchange,提问作者ntg
相关产品推荐
相关产品推荐

