server { listen 80; # 1. Handle the path Traefik is routing location /lab/data-dashboard/ { alias /usr/share/nginx/html/; try_files $uri $uri/ /index.html; } # 2. Add an explicit health check endpoint (returns 200 OK) location /health { return 200 'healthy'; add_header Content-Type text/plain; } # 3. Fallback for SPA routing location / { root /usr/share/nginx/html; try_files $uri $uri/ /index.html; } }