Задать вопрос
@stalkerman2

Вебсокет wss — nignx — сервер сокет php ws — nignx — клиент wss?

Здравствуйте! Подскажите вообще такое возможно или нет ? Вот ссылка объясняющая механизм. nginx.org/ru/docs/http/websocket.html Но делая как там написано обращение к чату через javascript wss возвращает (ошибку onclose: 1015).

Схема, как хотелось-бы чтобы работало.
___________ ____________
wss(https) | | ws(http) | |
user ----> | Nginx |----------> | php socket chat
|__________ |< ---------- ____________|


Что мне нужно, у меня есть сервер, на нем установлен апач, nignx, запущен через php сокет сервер чата, хорошо работает если к нему обращаешься с другого сервера через javascript по протоколу ws://сайт-сервером.ru:port. Ответы присылаются, быстро. В начале думал переведу сервер чата на SSL и все будет хорошо, после настройки скрипта php сервера сокет стал тупить, соединение занимает по 5 - 10 секунд. Соединение происходит и то не всегда. Хотя по незащищенному протоколу моментально. Поэтому и начал искать конструкцию, которая сможет через nignx шифровать и получать пакеты. Eсли сайт с чатом открываешь по https, открывается моментально, что не скажешь если криптографией занимается скрипт soket php.

Сейчас на сервере в настройки nignx у меня эта конструкция
location / {
proxy_pass 127.0.0.1:81;
proxy_redirect 127.0.0.1:81 /;
include /etc/nginx/proxy_params;
}

Заменив на это из инструкции nginx.org/ru/docs/http/websocket.html , вообще перестал создаваться socket php сервер
location / {
proxy_pass 127.0.0.1:81;
proxy_redirect 127.0.0.1:81 /;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
include /etc/nginx/proxy_params;
}

Возможно-ли через javascript wss обращение к серверу nignx получить доступ к серверу ws ???? Как это сделать, что мне не хватает в понимание всего механизма.
  • Вопрос задан
  • 11 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы