Traefik を使用してサブフォルダーで Laravel を実行する方法は次のとおりです。次のシナリオを考えてみましょう:
次のように 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 を生成するには、常に url()、route() などの URL ヘルパーを使用してください。
それだけです!これで、 docker compose up -d を使用して構成ファイルを実行し、サブフォルダー経由で Laravel アプリケーションにアクセスできるようになります。
以上がTraefik を使用してサブフォルダーに Laravel をセットアップする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。