我有一個通過Nginx設置的Node.js,它涉及Server-Sent Events。通過Nginx在Node.js上發送服務器發送的事件連接超時
無論我的Nginx配置如何,sse的連接在60秒後都會中斷並重新初始化。如果我直接在應用程序的端口上連接應用程序,則不會發生這種情況,所以很顯然,這是一些Nginx代理問題。
我想在sse連接上沒有超時。那可能嗎?我試過調整send_timeout
,keepalive_timeout
,client_body_timeout
和client_header_timeout
,但它沒有改變任何東西。以下是我的Nginx配置。
upstream foobar.org {
server 127.0.0.1:3201;
}
server {
listen 0.0.0.0:80;
server_name example.org;
client_max_body_size 0;
send_timeout 600s;
location/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://example.org/;
proxy_redirect off;
proxy_set_header Connection '';
proxy_http_version 1.1;
chunked_transfer_encoding off;
proxy_buffering off;
proxy_cache off;
}
}