# Ein Server, ein Verzeichnis, drei Seiten. server { listen 80; server_name _; root /usr/share/nginx/html; index index.html; # Vorkomprimierte Fassungen liegen dank `precompress` im Build daneben # (.gz). Ohne diese Zeile ignoriert nginx sie und packt jede Antwort neu. # # Sie steht hier im Server-Block und nicht per `sed` in der # `nginx.conf` des Bildes: Dort war die erste Zeile, die mit `}` beginnt, # das Ende von `events { … }`. `gzip_static` ist dort keine gültige # Anweisung, nginx verweigerte den Start, und der Container ging sofort # wieder aus — „exited:unhealthy", ohne dass im Deploy-Log etwas # danebenstand. gzip_static on; # Die Seiten sind beim Bauen entstanden und ändern sich nur mit dem # nächsten Deployment. Das HTML selbst bleibt trotzdem ungecacht: Sonst # zeigt ein Browser den Wegweiser von vorgestern, wenn sich der Text # ändert. location / { try_files $uri $uri/ $uri.html =404; add_header Cache-Control "no-cache"; } # Alles unter /_app/immutable trägt seinen Hash im Namen — das darf ein # Jahr im Cache liegen. location /_app/immutable/ { add_header Cache-Control "public, max-age=31536000, immutable"; } location = /stammtisch-hersbruck.svg { add_header Cache-Control "public, max-age=604800"; } error_page 404 /index.html; }