server {
  listen 80;
  server_name _;

  root /usr/share/nginx/html;

  location / {
    index index.html;
    # @TODO: nikola - we should try without try_files
    #   https://www.getpagespeed.com/server-setup/nginx-try_files-is-evil-too
    try_files $uri $uri/ /index.html;
  }

  # 1) All “hashed” JS/CSS/images → far‐future cache
  location ~* \.(?:js|css|png|jpg|jpeg|svg|ico|webp|woff2?)$ {
    expires 100d;
    add_header Cache-Control "public, immutable";
    try_files $uri =404;
  }

  # 2) Index.html (non‐hashed) → no caching (always revalidate)
  location = /index.html {
    add_header Cache-Control "no-cache";
    try_files $uri =404;
  }
}
