jenkins e035cadb4d
Some checks failed
Tests / Declarative: Post Actions failed: 42, skipped: 89, passed: 4273
lesavka: host no-upload receiver observer at dedicated HTTPS path
2026-10-02 17:02:43 -05:00

36 lines
1.5 KiB
Nginx Configuration File

worker_processes 1;
pid /tmp/nginx.pid;
error_log /dev/stderr warn;
events { worker_connections 128; }
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log off;
server_tokens off;
client_max_body_size 1k;
client_body_temp_path /tmp/client;
proxy_temp_path /tmp/proxy;
fastcgi_temp_path /tmp/fastcgi;
uwsgi_temp_path /tmp/uwsgi;
scgi_temp_path /tmp/scgi;
server {
listen 8080;
absolute_redirect off;
root /usr/share/nginx/html;
if ($request_method !~ ^(GET|HEAD)$) { return 405; }
add_header Cache-Control "no-store" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Referrer-Policy "no-referrer" always;
add_header Permissions-Policy "camera=(self), microphone=(self), geolocation=(), display-capture=()" always;
add_header Cross-Origin-Opener-Policy "same-origin" always;
add_header Content-Security-Policy "default-src 'none'; script-src 'self'; style-src 'self'; media-src 'self' blob:; connect-src 'none'; worker-src 'self'; object-src 'none'; base-uri 'none'; form-action 'none'; frame-ancestors 'none'" always;
location = /lesavka-av-test { return 308 /lesavka-av-test/; }
location = /lesavka-av-test/ { try_files /lesavka-av-test/index.html =404; }
location ~ ^/lesavka-av-test/(index\.html|observer\.js|metrics\.js|activity-worklet\.js|style\.css)$ {
try_files $uri =404;
}
location / { return 404; }
}
}