Помогите разобраться как подключить nginx к веб сокет порту Wirenboard5?
nginx установлен на другом сервере, у которого есть связь с Wirenboard5. Евгений упоминал, что можно этот удалённый nginx подключить к веб сокет порту для оптимизации работы Web UI.
Какая должна быть конфигурация веб-сервера и что нужно настроить в Wirenboard5, чтобы это всё заработало? Или пришлите ссылочку где об этом можно почитать, в документации про это никаких подробностей нет.
Задача: иметь доступ к Web UI через интернет по плохому каналу наиболее оптимальным способом
Спасибо!
Неправильно меня поняли. Вебсокет доступен на том же порту, что и веб-сервер на WB (порт 80). Если хотите проксировать запросы с внешнего nginx, то гуглить по ключевым словам nginx proxy.
Проблема серьёзнее: внешний сервер же должен как-то подключаться к WB. Для этого WB должен быть напрямую доступен из интернета.
В реальности скорее всего он как минимум за роутером, поэтому вам нужно настроить проброс портов, а ещё лучше какой-нибудь VPN-тоннель c контроллера на сервер.
Я VPN уже сделал с роутера на сервер и порты пробросил. Осталось на сервере настроить nginx, чтобы он подключился к WB через туннель. Буду гуглить как вы сказали, спасибо!
Кстати, а почему туннель лучше делать с WB, а не с роутера?
никакой разницы, как проще.
Просто про наш контроллер я всё знаю, а роутеры бывают разные.
У меня вот так
ssh -f -N -R 0.0.0.0:18883:localhost:18883 user@routerhost CheckHostIP no StrictHostKeyChecking no ServerAliveInterval 90 ServerAliveCountMax 4 ExitOnForwardFailure yes
Но есть проблема тунель перестает работать через некоторое время, хотя не рвется (через GSM). Я по крону принудительно убиваю и поднимаю тунель через время.
Wiren находится за NATом сотовой сети (если это GSM) поэтому лучше с него тунель создавать
Я настроил туннель с роутера Zyxel Keenetic 4G II и сам туннель отлично работает при очень нестабильной сотовой связи 2G с временем пинга с VPN-сервера до Wirenboard 500-2000мс. При регулярном исчезновении связи, после её появления VPN канал отлично восстанавливается.
Web UI загружается при доступе через Интернет, но постоянно горит статус Disconnected, хотя Wirenboard точно работает и должно быть Connected. К сожалению, Web UI очень плохо оптимизирован для плохих каналов, поэтому загружается очень медленно.
Вопрос: Disconnected вызван плохим качеством канала или какие-то порты на маршрутизаторе оказались закрыты, которые должны быть открыты?
порт 18883, можно в настройках WebUI сменить на 80. Это чревато небольшой потерей производительности.
Я UI вынес на роутер. Веб сокеты при плохом канале работают довольно приемлемо.