사내 대시보드에 실시간 알림 붙이려고 socket.io 서버(노드)를 nginx 리버스프록시 뒤에 뒀는데요. 브라우저 개발자도구 네트워크 보면 처음 몇 초는 polling으로 붙었다가 websocket으로 업그레이드하는 순간 502가 뜹니다. 폴링으로는 그럭저럭 동작은 하는데 계속 롱폴링이라 찝찝해서요.
nginx conf는 대충 이렇게 잡았습니다.
location /socket.io/ {
proxy_pass http://127.0.0.1:3001;
proxy_set_header Host $host;
}노드쪽 로그엔 에러가 안 남고 nginx error.log에만 이런 줄이 찍혀요.
*128 upstream prematurely closed connection while reading response header from upstream, ... "GET /socket.io/?EIO=4&transport=websocket HTTP/1.1"구글링해서 proxy_read_timeout도 올려봤는데 그대로네요. 뭘 빠뜨린 걸까요?
댓글 0