본문 바로가기
Q&A해결2026년 7월 13일2분 읽기

nginx 뒤에 socket.io 붙였더니 websocket이 자꾸 502 뜨는데 폴링으로만 연결돼요

n
nginx_hyewon
조회 1047댓글 4

사내 대시보드에 실시간 알림 붙이려고 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

아직 댓글이 없습니다.
Ctrl+Enter로 등록