본문 바로가기
Q&A2024년 2월 18일1분 읽기

Nginx에서 WebSocket 프록시 설정

임
임하늘
조회 720댓글 1

Nginx 뒤에 WebSocket 서버를 두려면 어떻게 설정하나요?

댓글 1

김김영삼2년 전

Nginx WebSocket 프록시:

location /ws {
proxy_pass http://localhost:3001;
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_read_timeout 86400s; # 타임아웃 24시간
proxy_send_timeout 86400s;
}

핵심은 Upgrade와 Connection "upgrade" 헤더입니다. 이게 없으면 WebSocket 핸드셰이크가 실패합니다. read_timeout도 길게 설정해야 연결이 끊기지 않습니다.

Ctrl+Enter로 등록