159 lines
4.2 KiB
Nginx Configuration File
159 lines
4.2 KiB
Nginx Configuration File
|
||
#user nobody;
|
||
worker_processes 1;
|
||
|
||
#error_log logs/error.log;
|
||
#error_log logs/error.log notice;
|
||
#error_log logs/error.log info;
|
||
|
||
#pid logs/nginx.pid;
|
||
|
||
|
||
events {
|
||
worker_connections 1024;
|
||
}
|
||
|
||
|
||
http {
|
||
include mime.types;
|
||
default_type application/octet-stream;
|
||
|
||
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||
# '$status $body_bytes_sent "$http_referer" '
|
||
# '"$http_user_agent" "$http_x_forwarded_for"';
|
||
|
||
#access_log logs/access.log main;
|
||
|
||
sendfile on;
|
||
#tcp_nopush on;
|
||
|
||
#keepalive_timeout 0;
|
||
keepalive_timeout 65;
|
||
client_max_body_size 200m;
|
||
|
||
#gzip on;
|
||
|
||
server {
|
||
listen 80;
|
||
server_name localhost;
|
||
|
||
#charset koi8-r;
|
||
|
||
#access_log logs/host.access.log main;
|
||
|
||
location / {
|
||
root html;
|
||
index index.html index.htm;
|
||
}
|
||
# ----------------------------
|
||
# API 和静态资源代理
|
||
# ----------------------------
|
||
location /universaltestsoftware_client_api {
|
||
proxy_pass http://127.0.0.1:8081;
|
||
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_redirect off;
|
||
}
|
||
|
||
# ----------------------------
|
||
# ✅ 正确的 WebSocket 代理配置
|
||
# ----------------------------
|
||
location /universaltestsoftware_client_api/ws/ {
|
||
# 关键:proxy_pass 只写到 host:port,不加路径
|
||
proxy_pass http://127.0.0.1:8081;
|
||
|
||
# 必须:支持 WebSocket 升级
|
||
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;
|
||
|
||
# 长连接超时(WebSocket 是长连接)
|
||
proxy_read_timeout 86400s;
|
||
proxy_send_timeout 86400s;
|
||
|
||
# 可选:子协议支持
|
||
proxy_set_header Sec-WebSocket-Protocol $http_sec_websocket_protocol;
|
||
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
|
||
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
|
||
}
|
||
|
||
#error_page 404 /404.html;
|
||
|
||
# redirect server error pages to the static page /50x.html
|
||
#
|
||
error_page 500 502 503 504 /50x.html;
|
||
location = /50x.html {
|
||
root html;
|
||
}
|
||
|
||
|
||
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
|
||
#
|
||
#location ~ \.php$ {
|
||
# proxy_pass http://127.0.0.1;
|
||
#}
|
||
|
||
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
|
||
#
|
||
#location ~ \.php$ {
|
||
# root html;
|
||
# fastcgi_pass 127.0.0.1:9000;
|
||
# fastcgi_index index.php;
|
||
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
|
||
# include fastcgi_params;
|
||
#}
|
||
|
||
# deny access to .htaccess files, if Apache's document root
|
||
# concurs with nginx's one
|
||
#
|
||
#location ~ /\.ht {
|
||
# deny all;
|
||
#}
|
||
}
|
||
|
||
|
||
# another virtual host using mix of IP-, name-, and port-based configuration
|
||
#
|
||
#server {
|
||
# listen 8000;
|
||
# listen somename:8080;
|
||
# server_name somename alias another.alias;
|
||
|
||
# location / {
|
||
# root html;
|
||
# index index.html index.htm;
|
||
# }
|
||
#}
|
||
|
||
|
||
# HTTPS server
|
||
#
|
||
#server {
|
||
# listen 443 ssl;
|
||
# server_name localhost;
|
||
|
||
# ssl_certificate cert.pem;
|
||
# ssl_certificate_key cert.key;
|
||
|
||
# ssl_session_cache shared:SSL:1m;
|
||
# ssl_session_timeout 5m;
|
||
|
||
# ssl_ciphers HIGH:!aNULL:!MD5;
|
||
# ssl_prefer_server_ciphers on;
|
||
|
||
# location / {
|
||
# root html;
|
||
# index index.html index.htm;
|
||
# }
|
||
#}
|
||
|
||
}
|