{ email {env.CLOUDFLARE_EMAIL} acme_dns cloudflare {env.CLOUDFLARE_API_TOKEN} acme_ca https://acme-v02.api.letsencrypt.org/directory debug } # Prod: Neue Domains www.bizmatch.net { handle /pictures/* { root * /home/aknuth/git/bizmatch-project/bizmatch-server # Prod-Ordner file_server } # Statische Dateien (CSS, JS, Bilder) – lange cachen, da sich der Name bei Änderungen ändert header /assets/* Cache-Control "public, max-age=31536000, immutable" header /*.css Cache-Control "public, max-age=31536000, immutable" header /*.js Cache-Control "public, max-age=31536000, immutable" # Die index.html und API-Antworten – NIEMALS cachen header /index.html Cache-Control "no-cache, no-store, must-revalidate" handle { reverse_proxy host.docker.internal:4200 } log { output file /var/log/caddy/access.prod.log # Separate Logs } encode gzip zstd } bizmatch.net { redir https://www.bizmatch.net{uri} permanent } www.qrmaster.net { handle { reverse_proxy host.docker.internal:3050 } log { output file /var/log/caddy/qrmaster.log format console } encode gzip } qrmaster.net { redir https://www.qrmaster.net{uri} permanent } www.innungsapp.com { handle { reverse_proxy host.docker.internal:3010 } log { output file /var/log/caddy/innungsapp.log format console } encode gzip } innungsapp.com { redir https://www.innungsapp.com{uri} permanent } auth.bizmatch.net { reverse_proxy https://bizmatch-net.firebaseapp.com { header_up Host bizmatch-net.firebaseapp.com header_up X-Forwarded-For {remote_host} header_up X-Forwarded-Proto {scheme} header_up X-Real-IP {remote_host} } } gitea.bizmatch.net { reverse_proxy gitea:3500 } api.bizmatch.net { reverse_proxy host.docker.internal:3001 { # Neu: Proxy auf Prod-Port 3001 header_up X-Real-IP {http.request.header.CF-Connecting-IP} header_up X-Forwarded-For {http.request.header.CF-Connecting-IP} header_up X-Forwarded-Proto {http.request.header.X-Forwarded-Proto} header_up CF-IPCountry {http.request.header.CF-IPCountry} } } greenlenspro.com { encode zstd gzip @storage path /storage /storage/* handle @storage { uri strip_prefix /storage reverse_proxy minio:9000 } @api path /api /api/* /auth /auth/* /v1 /v1/* /health /plants /plants/* handle @api { reverse_proxy api:3000 } handle { reverse_proxy landing:3000 } }