# 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;
|
}
|
}
|