Назад | Перейти на главную страницу

Запросы обратного прокси на основе http: // или ws: // в заголовке запроса

Из ранее заданного вопроса я знаю, что могу направлять запросы на другие серверы с помощью обратного прокси, например mod_proxy для apache. У меня вопрос, прежде чем я углублюсь в его настройку, какой из обратных прокси позволит мне принять решение о маршруте на основе HTTP или ws в заголовке запроса. Так, например, я бы хотел, чтобы все запросы поступали на https://example.com перенаправляться на lanserver: 443, а запросы, приходящие на прокси с wss://example.comдля перенаправления на конечную точку веб-сокета на сервере lanserver: 8443.

Возможно ли это с помощью mod_proxy? Или любой другой прокси Linux?

Спасибо.

Поскольку я ответил на ваш первый вопрос, я мог бы также ответить и на этот. :)

Похоже, что mod_proxy может делать Это, но так может Nginx и HAproxy (или Вот).

Эти ссылки, по крайней мере, показывают, что проксирование WebSockets работает, но то, как вы на самом деле сделаете это с Apache или Nginx, потребует некоторой работы.

С другой стороны, предоставленные ссылки HAproxy показывают, как именно это сделать так, как вы хотите.

Спойлер: вы обнаруживаете присутствие Upgrade: websocket заголовок и маршрут на основе этого.