server { listen 80; server_name localhost; root /usr/share/nginx/html; index index.html; # Enable clean URLs without .html extension location / { # Try the exact URI, then with .html, then as directory with index.html, then 404 try_files $uri $uri.html $uri/ =404; } # Optional: Redirect .html URLs to clean URLs if ($request_uri ~ ^/(.*)\.html(\?|$)) { return 301 /$1$2; } # Gzip compression for better performance gzip on; gzip_vary on; gzip_types text/plain text/css text/xml text/javascript application/javascript application/xml+rss application/json; }