首页 > 后端开发 > php教程 > 如何使用 Traefik 在子文件夹中设置 Laravel

如何使用 Traefik 在子文件夹中设置 Laravel

Linda Hamilton
发布: 2025-01-04 05:31:39
原创
1006 人浏览过

How to Set Up Laravel in a Subfolder Using Traefik

以下是如何使用 Traefik 在子文件夹中运行 Laravel。让我们考虑一下这种情况:

  • Traefik 已经安装了入口点 http 和 https。
  • Laravel 将安装在 /app 子文件夹中。
  • Traefik 和 Laravel 将使用名为 traefik 的外部网络。

编辑 docker-compose.yml 如下:

services:
  app:
    image: your-app-image

    # ...the rest of the configuration

    networks:
      - traefik
    labels:
      - traefik.enable=true
      - traefik.docker.network=traefik
      - traefik.constraint-label=traefik

      - traefik.http.middlewares.app-strip.stripprefix.prefixes=/app

      # HTTP entrypoint
      - traefik.http.routers.app-http.entrypoints=http
      - traefik.http.routers.app-http.rule=Host(`your-app-domain.com`) && PathPrefix(`/app`)
      - traefik.http.routers.app-http.middlewares=https-redirect,app-strip

      # HTTPS  entrypoint
      - traefik.http.routers.app-https.entrypoints=https
      - traefik.http.routers.app-https.rule=Host(`your-app-domain.com`) && PathPrefix(`/app`)
      - traefik.http.routers.app-https.tls=true
      - traefik.http.routers.app-https.middlewares=app-strip

networks:
  traefik:
    external: true
登录后复制

编辑 .env 并在 APP_URL 中设置子文件夹。

APP_URL=https://your-app-domain.com/app

# ...the rest of the configuration
登录后复制

编辑 app/Http/Middleware/TrustProxies.php 并确保允许所有代理让 Laravel 生成 HTTPS URL。

始终使用 url()、route() 等 URL 帮助器来生成完整的 URL,包括子文件夹路径。

就是这样!现在您可以使用 docker compose up -d 运行您的 compose 文件并通过子文件夹访问您的 Laravel 应用程序。

以上是如何使用 Traefik 在子文件夹中设置 Laravel的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板