首页 > 解决方案 > 如何使用 PathPrefix 将 Traefik2 重定向到 aurelia webpack 应用程序

问题描述

我有一个问题......我的设置是这样的:

  1. Aurelia 1 + Webpack 应用程序(使用 Aurelia-cli + Webpack 完成)托管在 docker 中。
  2. Traefik 2 代理托管在 docker 中(已配置并与其他应用程序一起使用)。
  3. 一个域让我们称之为“example.com”

现在我的设置是这样的:我添加了 traefik 配置,以将来自 https://example.com/app1的所有 traefik 路由 到我的 Aurelia 应用程序。像这样:

version: "3.7"
services:
    myapp:
    image: myapp
    networks:
      - traefik2-proxy
    deploy:
      replicas: 1
      labels:
        - "traefik.enable=true"
        - "traefik.http.routers.myapp.rule=Host(`www.example.com`) || Host(`example.com`) && 
           PathPrefix(`/app1`)"
        - "traefik.http.routers.myapp.tls=true"
        - "traefik.http.routers.myapp.entrypoints=web-secured"
        - "traefik.http.services.myapp.loadbalancer.server.port=80"
networks:
  traefik2-proxy:
    external: true

现在,当我输入https://example.com/app1时,我收到此错误(对于每个 .js 块):

GET https://example.com/vendors~4b868729.df61ec254654982e9171.chunk.js net::ERR_ABORTED 404

我试图将 webpack.config 中的 'baseUrl' 从 '/' 更改为 '/app1' 和 '/app1/' 但是它说有一个无效的 '<' 字符,因为它将所有 .html 作为 .js 块加载文件。

如何使用 webpack 设置 Aurelia 以从非根 url 路径加载?

标签: dockerwebpackaureliatraefik

解决方案


推荐阅读