diff --git a/web/nginx.conf b/web/nginx.conf index 7fff941..4cf81f3 100644 --- a/web/nginx.conf +++ b/web/nginx.conf @@ -17,9 +17,21 @@ server { return 200 '{"applinks":{"details":[{"appIDs":["PP34X97WS3.com.scarriffle.vorrania"],"components":[{"/":"/i/*"}]}]}}'; } - # SPA-Routing: unbekannte Pfade auf index.html mappen + # Gehashte Assets (index-.js/.css, Bilder, Schriften): der Dateiname + # aendert sich bei jedem Build, wenn sich der Inhalt aendert -> unveraenderlich, + # deshalb aggressiv cachen. + location ~* \.(?:js|css|woff2?|ttf|eot|png|jpe?g|gif|svg|ico|webp)$ { + try_files $uri =404; + expires 1y; + add_header Cache-Control "public, immutable"; + } + + # SPA-Routing: unbekannte Pfade auf index.html mappen. index.html selbst darf + # NICHT gecacht werden - sonst laedt der Browser nach einem Deploy weiter die + # alte Seite mit den alten Asset-Verweisen, und Aenderungen kommen nie an. location / { try_files $uri $uri/ /index.html; + add_header Cache-Control "no-cache"; } # API an das Backend weiterleiten (Service-Name "backend" aus docker-compose)