73 lines
2.1 KiB
Nginx Configuration File
73 lines
2.1 KiB
Nginx Configuration File
worker_processes 1;
|
||
|
||
events {
|
||
worker_connections 1024;
|
||
}
|
||
|
||
http {
|
||
include mime.types;
|
||
default_type application/octet-stream;
|
||
sendfile on;
|
||
keepalive_timeout 65;
|
||
|
||
server {
|
||
listen 80;
|
||
server_name localhost;
|
||
|
||
location / {
|
||
root /home/ruoyi/projects/ruoyi-ui;
|
||
try_files $uri $uri/ /index.html;
|
||
index index.html index.htm;
|
||
}
|
||
|
||
# WebSocket 配置 (必须放在 /prod-api/ 之前)
|
||
location /prod-api/websocket/ {
|
||
proxy_pass http://ruoyi-gateway:8080/websocket/;
|
||
|
||
# WebSocket 必需的配置
|
||
proxy_http_version 1.1;
|
||
proxy_set_header Upgrade $http_upgrade;
|
||
proxy_set_header Connection "upgrade";
|
||
|
||
# 其他代理头
|
||
proxy_set_header Host $http_host;
|
||
proxy_set_header X-Real-IP $remote_addr;
|
||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||
|
||
# 超时设置(WebSocket 长连接)
|
||
proxy_connect_timeout 60s;
|
||
proxy_send_timeout 600s;
|
||
proxy_read_timeout 600s;
|
||
}
|
||
|
||
location /prod-api/{
|
||
proxy_set_header Host $http_host;
|
||
proxy_set_header X-Real-IP $remote_addr;
|
||
proxy_set_header REMOTE-HOST $remote_addr;
|
||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||
proxy_pass http://ruoyi-gateway:8080/;
|
||
}
|
||
|
||
location /minio/ {
|
||
proxy_set_header Host $http_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_connect_timeout 300;
|
||
proxy_http_version 1.1;
|
||
proxy_set_header Connection "";
|
||
chunked_transfer_encoding off;
|
||
proxy_pass http://ruoyi-minio:9000/;
|
||
}
|
||
|
||
# 避免actuator暴露
|
||
if ($uri ~ "/actuator") {
|
||
return 403;
|
||
}
|
||
|
||
error_page 500 502 503 504 /50x.html;
|
||
location = /50x.html {
|
||
root html;
|
||
}
|
||
}
|
||
} |