server { listen 80; server_name localhost; location / { root /usr/share/nginx/html; index index.html index.htm; # SPA routing: if a file isn't found, serve index.html try_files $uri $uri/ /index.html; } # Optional: Cache static assets location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { root /usr/share/nginx/html; expires 1y; add_header Cache-Control "public, no-transform"; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } }