server { listen 80; listen [::]:80; server_name playground.schwenk.online; root /usr/share/nginx/html; index index.html; include /etc/nginx/conf.d/security-headers.conf; gzip on; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_types text/plain text/css text/xml application/json application/javascript application/manifest+json application/xml+rss application/atom+xml image/svg+xml; location ~* \.webmanifest$ { default_type application/manifest+json; add_header Cache-Control "public, max-age=86400"; } location ~* \.(jpg|jpeg|png|gif|ico|css|js|svg|webp)$ { expires 1y; add_header Cache-Control "public, no-transform"; } location / { try_files $uri $uri/ =404; } location ~ /\. { deny all; return 404; access_log off; log_not_found off; } }