dr.Brain

doctor Brain

мир глазами веб-разработчика

Реверсивный прокси-сервер

Что такое реверсивный прокси-сервер и для чего он нужен

dr.Brain

время чтения 2 мин.

Photo by Malcolm Lightbody on Unsplash

Говоря о серверах, мы часто слышим термин реверсивный прокси-сервер (reverse proxy). В этой статье мы разберем - что такое реверсивный прокси-сервер и чем он может быть полезен.

Для начала, поговорим о прокси-сервере (proxy).

Прокси-сервер - это сервер, который получает соединения от клиентов, активно настроивших соответствующий прокси-сервер в сетевых настройках своего оборудования. В таких случаях при подключении клиента к серверу все запросы всегда проходят через указанный в настройках прокси-сервер.

Такая технология имеет несколько полезных применений. Различные компании и организации используют прокси-серверы для фильтрации соединений, обеспечения безопасности подключений и логирования трафика. Без использования прокси-сервера клиенты не могут подключиться к внешней сети. Кроме того, прокси-серверы часто бывают полезны для обеспечения конфиденциальности подключений и обхода ограничений, установленных на уровне правительств разных стран.

В отличие от простого прокси-сервера реверсивный прокси-сервер (reverse proxy) настраивается на уровне серверного оборудования. Реверсивный прокси-сервер абсолютно прозрачен для пользователей, которые обычно даже не догадываются о его существовании. Тем не менее, реверсивный прокси-сервер выполняет очень важную работу, фильтруя запросы и отправляя их на обработку соответствующим сервисам.

Популярные примеры:

  1. использование Nginx в качестве реверсивного прокси-сервера,
  2. использования различных служб, написанных на Node.js, слушающих определенные порты, недоступные извне.

Nginx обычно является основным обработчиком запросов, перенаправляющим соответствующие запросы: например, связывая определенные каталоги или URL-адреса с конкретными службами.

Так же, можно встретиться с несколькими различными Node.js-приложениями, выполняющими совершенно различные задачи. При это пользователи соответствующих сервисов даже не догадываются о наличии таких служб.

Помимо функции маршрутизации, из-за которой реверсивные прокси-серверы так популярны у веб-разработчиков, реверсивные прокси-серверы могут выполнять и другие задачи, в том числе:

  1. осуществлять фильтрацию трафика,
  2. защищать от атак, выступая в качестве брандмауэра,
  3. внедрять кеширование,
  4. участвовать в настройках SSL,
  5. участвовать в распределении нагрузки,
  6. обеспечивать A/B-тестирование.

и это далеко не все возможности реверсивных прокси-серверов.


Спасибо за внимание.

Новые публикации

Далее

Категории

О нас

Frontend & Backend. Статьи, обзоры, заметки, код, уроки.