Как настроить сервер Nginx для использования WebSockets? - PullRequest
0 голосов
/ 19 марта 2020

У меня есть веб-сайт, который должен работать через сервер Nginx. На данный момент я не верю, что конфигурация для nginx правильная. В настоящее время у меня есть

server{
        server_name websitename.com;

       location /websocket/{
                proxy_pass http://websitename.com;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "Upgrade";
                proxy_set_header $host;
        }

}

. На данный момент на веб-сайте появляется сообщение об ошибке «SCRIPT12008: SCRIPT12008: Ошибка WebSocket: неверный ответ HTTP. Код состояния 200, OK», что, по-моему, связано с тем, что протокол не переключается правильно.

1 Ответ

1 голос
/ 19 марта 2020

Вы забыли двойные кавычки и "Host" перед $ host, чтобы установить директиву Host:

proxy_set_header Host $host;

Таким образом, ваша конфигурация должна выглядеть так:

server{
        server_name websitename.com;

       location /websocket/{
                proxy_pass "http://websitename.com";
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header Host $host;
        }

}

Всегда проверьте синтаксис с помощью команды nginx -t.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...