以下是如何使用 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()、route() 等 URL 幫助器來產生完整的 URL,包括子資料夾路徑。
就是這樣!現在您可以使用 docker compose up -d 運行您的 compose 檔案並透過子資料夾存取您的 Laravel 應用程式。
以上是如何使用 Traefik 在子資料夾中設定 Laravel的詳細內容。更多資訊請關注PHP中文網其他相關文章!