Для прокси WebSocket трафика там доп. настройки нужны тоже:
http {
upstream chatsrv {
server 127.0.0.1:3000;
}
server {
listen 80;
server_name sub.domain.com;
location / {
proxy_pass http://chatsrv/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
}
}
}