server { listen 80; # Przekierowanie bez / na /odoo/ location = /odoo { return 301 /odoo/; } # Serwowanie Vue location /odoo/ { alias /usr/share/nginx/html/; index index.html; try_files $uri $uri/ /odoo/index.html; } # no cache index.html location = /odoo/index.html { add_header Cache-Control "no-cache, no-store, must-revalidate"; expires 0; } # cache JS/CSS/OBRAZY na długo location ~* \.(?:js|css|png|jpg|jpeg|gif|ico|svg|woff2?)$ { add_header Cache-Control "public, max-age=31536000, immutable"; access_log off; expires 1y; alias /usr/share/nginx/html/; } # Proxy do backendu location /odoo/api/ { proxy_pass http://backend:8000/; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }