meson / code.meson.kr

Last active 3 weeks ago

Like 0

Revision 0faae947c405549024eb9b41507429f9ebd05000

code.meson.kr Raw
1server {
2 listen 80;
3 listen [::]:80;
4 server_name code.meson.kr;
5
6 return 301 https://$host$request_uri;
7}
8
9server {
10 # HTTP/2 over TCP
11 listen 443 ssl;
12 listen [::]:443 ssl;
13
14 # HTTP/3 over QUIC/UDP
15 listen 443 quic;
16 listen [::]:443 quic;
17
18 http2 on;
19 http3 on;
20
21 add_header Alt-Svc 'h3=":443"; ma=86400' always;
22
23 server_name code.meson.kr;
24 root /home/www-data/code.meson.kr;
25
26 # SSL Certificate Configuration (Certbot managed)
27
28 include /etc/letsencrypt/options-ssl-nginx.conf;
29
30 ssl_certificate /etc/letsencrypt/live/code.meson.kr/fullchain.pem;
31 ssl_certificate_key /etc/letsencrypt/live/code.meson.kr/privkey.pem;
32
33 # Security Headers
34 add_header X-Frame-Options "SAMEORIGIN" always;
35 add_header X-XSS-Protection "1; mode=block" always;
36 add_header X-Content-Type-Options "nosniff" always;
37 add_header Referrer-Policy "no-referrer-when-downgrade" always;
38 add_header Content-Security-Policy "default-src 'self' http: https: data: blob: 'unsafe-inline'" always;
39 add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always;
40
41 # Max upload size (Crucial for pasting large codebases or file drag-and-drops)
42 client_max_body_size 64M;
43
44 # Logging
45 access_log /var/log/nginx/p.onni.me.log combined if=$loggable;
46 error_log /var/log/nginx/_error_p.onni.me.log warn;
47
48 location / {
49 # Forward traffic to the Docker container port we mapped
50 proxy_pass http://127.0.0.1:6157;
51
52 # Standard Reverse Proxy Headers
53 proxy_set_header Host $host;
54 proxy_set_header X-Real-IP $remote_addr;
55 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
56 proxy_set_header X-Forwarded-Proto $scheme;
57
58 # WebSocket Support (Required for Opengist interactive features)
59 proxy_http_version 1.1;
60 proxy_set_header Upgrade $http_upgrade;
61 proxy_set_header Connection "upgrade";
62
63 # Proxy Timeout Optimizations
64 proxy_connect_timeout 90s;
65 proxy_send_timeout 90s;
66 proxy_read_timeout 90s;
67 proxy_buffering off;
68 }
69}