# Server 配置文件 server { listen 8080; server_name localhost; charset utf-8; root D:/work/nginx-1.26.3/html/dist; index index.html index.htm; # 前端路由 location / { try_files $uri $uri/ /index.html; } # 静态资源缓存 location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2|ttf|eot)$ { expires 30d; add_header Cache-Control "public, immutable"; access_log off; } # 内部 location:记录请求体 location = /_log_request_body { internal; client_body_buffer_size 128k; client_max_body_size 10m; client_body_in_file_only off; client_body_in_single_buffer on; access_log logs/request_body.log json_log; return 200 ""; } # API 代理 location /rsf-open-api/ { client_body_buffer_size 128k; client_max_body_size 10m; mirror /_log_request_body; mirror_request_body on; access_log logs/api_access.log api_log; access_log logs/access.log; proxy_pass http://api_backend/rsf-open-api/; 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; proxy_buffers 8 16k; proxy_buffer_size 32k; } # rsf-server 代理 location /rsf-server/ { client_body_buffer_size 128k; client_max_body_size 10m; mirror /_log_request_body; mirror_request_body on; access_log logs/server_access.log api_log; access_log logs/access.log; proxy_pass http://server_backend/rsf-server/; 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; proxy_buffers 8 16k; proxy_buffer_size 32k; } # WebSocket 代理 location /ws/ { proxy_pass http://api_backend/ws/; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; 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; proxy_buffering off; } # 错误页面 error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }