首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Traefik配置总是返回404

Traefik配置总是返回404
EN

Stack Overflow用户
提问于 2022-03-09 10:28:14
回答 2查看 464关注 0票数 0

我肯定做错了什么,但是.为什么每个对Traefik服务器的请求都返回404?

这里是traefik.yaml:

代码语言:javascript
运行
复制
entryPoints:
  web:
    address: ":80"

  websecure:
    address: ":443"

  traefik:
    address: ":9000"

providers:
  file:
    filename: traefik-routes.yaml

accessLog: {}

api:
  insecure: true
  dashboard: true

和traefik- with .with我正在尝试用PathPrefix(/)设置一个全捕获的路由

代码语言:javascript
运行
复制
http:
  routers:
    mistserver:
      service: mistserver
      rule: PathPrefix(`/`) 
      priority: 100

  services:
    mistserver:
      loadBalancer:
        servers:
        - url: http://localhost:8080/

tls:
  certificates:
    - certFile: tls.crt
      keyFile: tls.key

访问日志显示请求与任何路由器不匹配。为什么?

代码语言:javascript
运行
复制
[root@krabbucket traefik]# ./traefik --log.level=d
INFO[0000] Configuration loaded from file: /root/traefik/traefik.yaml
192.168.137.119 - - [09/Mar/2022:11:16:03 +0000] "GET / HTTP/2.0" - - "-" "-" 2 "-" "-" 0ms
192.168.137.119 - - [09/Mar/2022:11:16:03 +0000] "GET / HTTP/2.0" - - "-" "-" 3 "-" "-" 0ms
192.168.137.119 - - [09/Mar/2022:11:16:03 +0000] "GET / HTTP/2.0" - - "-" "-" 4 "-" "-" 0ms
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-03-24 12:53:09

在这种情况下,Traefik需要对TLS和non分别使用不同的路由。这一修订后的traefik-routes.yaml起了作用:

代码语言:javascript
运行
复制
http:
  routers:
    mistserver:
      service: mistserver
      rule: PathPrefix(`/`)
      priority: 100

    mistserver-tls:
      service: mistserver
      rule: PathPrefix(`/`)
      priority: 100
      tls: {}

  services:
    mistserver:
      loadBalancer:
        servers:
        - url: http://localhost:8080/

tls:
  certificates:
    - certFile: tls.crt
      keyFile: tls.key
票数 0
EN

Stack Overflow用户

发布于 2022-03-09 12:12:49

当traefik试图将您路由到它解析为traefik本身的服务时,您的服务URL被定义为http://localhost:8080/

你是想接近仪表盘吗?如果是这样,则将服务设置为api@internal

代码语言:javascript
运行
复制
http:
  routers:
    mistserver:
      service: api@interna
      rule: PathPrefix(`/`)
      priority: 100

然后您可以通过http://your-ip/dashboard/#/到达仪表板。

否则,您的路由器和服务名称mistserver看起来就像您试图在机器上找到什么东西一样。如果是这样的话,您就不能使用localhost来访问您的计算机,因为这将解决traefik本身。

相反,您可以使用您的公共ip地址,而不是本地主机,或者在主机模式中运行traefik。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71407858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档