Files
OnlineJudge/deploy/nginx/nginx.conf
2025-10-07 17:03:14 +08:00

72 lines
1.8 KiB
Nginx Configuration File

user nginx;
daemon off;
pid /tmp/nginx.pid;
worker_processes auto;
pcre_jit on;
error_log /data/log/nginx_error.log warn;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
server_tokens off;
keepalive_timeout 65;
sendfile on;
tcp_nodelay on;
gzip on;
gzip_vary on;
gzip_types application/javascript text/css;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
map $request $loggable {
default 1;
"~*^POST /api/judge_server_heartbeat/ HTTP/1\.1$" 0;
}
access_log /data/log/nginx_access.log main if=$loggable;
# access_log off;
upstream backend {
server 127.0.0.1:8080;
keepalive 32;
}
upstream websocket {
server 127.0.0.1:8001;
keepalive 32;
}
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Frame-Options SAMEORIGIN always;
add_header X-Content-Type-Options nosniff always;
server {
listen 8000 default_server;
server_name _;
include locations.conf;
}
# server {
# listen 1443 ssl http2 default_server;
# server_name _;
# ssl_certificate /data/ssl/server.crt;
# ssl_certificate_key /data/ssl/server.key;
# ssl_protocols TLSv1.2;
# ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
# ssl_prefer_server_ciphers on;
# ssl_session_cache shared:SSL:10m;
# include https_locations.conf;
# }
}