Вы должны добавить заголовки обновления к своему сокету io path в конфигурации nginx следующим образом:
location ~* \.io {
.. your configuration
proxy_pass http://localhost:3000;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
Поскольку вы попросили расширение ответа, первое, что вы, возможно, уже знаете is socket.io - это протокол, который использует протокол Websockets под капотом (поэтому оба они одинаковы). В качестве стандартов и протоколы Websockets, и протоколы HTTP прослушивают один и тот же порт 80 или 443. Протокол по умолчанию - HTTP, если пользователь хочет использовать протокол websockets, он / она должен отправить запрос на обновление с HTTP на протокол WS, и есть какой-то ключ аутентификация и шаги.
Вот почему вам нужно поместить их в конфигурацию nginx.
Обратитесь к этому , если вам нужна дополнительная информация о механизме обновления протокола.
Хотя, на мой взгляд, это не является точной копией этого вопроса, я чувствую себя обязанным отдать должное @Paulo за предоставление идеального ответа, даже если он не принят .
Можно использовать несколько файлов тега в Vim следующим образом:
:set tags=./tags,c:/ruby/lib/tags
Используя g]
даст Вам опции для найденных многократных въездов.