sto-k-odnomu/nginx.conf

38 lines
1.2 KiB
Nginx Configuration File
Raw Normal View History

2025-12-31 17:06:22 +00:00
server {
listen 80;
server_name _;
root /usr/share/nginx/html;
index index.html;
2026-01-04 23:44:46 +00:00
# Настройки для работы за reverse proxy (Coolify/Traefik)
real_ip_header X-Forwarded-For;
real_ip_recursive on;
set_real_ip_from 0.0.0.0/0;
2025-12-31 17:06:22 +00:00
# Gzip compression
gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml+rss application/json application/javascript;
2026-01-04 23:44:46 +00:00
# Security headers для HTTPS
2025-12-31 17:06:22 +00:00
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-XSS-Protection "1; mode=block" always;
2026-01-04 23:44:46 +00:00
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
2025-12-31 17:06:22 +00:00
2026-01-04 23:54:50 +00:00
# Кэширование статических ресурсов (должен быть перед location /)
2025-12-31 17:06:22 +00:00
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ {
2026-01-04 23:54:50 +00:00
try_files $uri =404;
2026-01-05 00:00:26 +00:00
access_log off;
2025-12-31 17:06:22 +00:00
expires 1y;
2026-01-05 00:00:26 +00:00
add_header Cache-Control "public, immutable" always;
2025-12-31 17:06:22 +00:00
}
2026-01-05 00:00:26 +00:00
# SPA routing support - все запросы направляются на index.html
2026-01-04 23:54:50 +00:00
location / {
try_files $uri $uri/ /index.html;
}
2025-12-31 17:06:22 +00:00
}