관련지식
nginx, websocket
node.js 서버에서 websocket을 사용하고 있는 경우, nginx 를 이용할때도 웹소켓 설정을 별도로 해주어야만 사용이 가능합니다. 방법은 간단합니다. 아래 내용을 설정에 추가하면 됩니다.
proxy_pass http://아이피:포트;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_http_version
, proxy_set_header
은 http
, server
, location
영역에서 설정 가능하지만 proxy_pass
는 location
영역에서나 설정이 가능하므로, 아래와 같이 웹소켓을 사용하는 특정 URI 에 대해서만 설정하는것이 좋습니다.
location /ws {
proxy_pass http://아이피:포트;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
참고
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_http_version
'nginx' 카테고리의 다른 글
[nginx] location 테스트 페이지 (0) | 2019.10.07 |
---|---|
[nginx] 특정 referer 에서만 url 호출 가능하도록 설정하기 (0) | 2019.10.02 |
[nginx] 중첩 if 사용방법 (0) | 2019.05.16 |
[nginx] cross-origin 활성화하기 (1) | 2019.05.14 |
[nginx] 413 Request Entity Too Large (0) | 2019.04.06 |