В чем разница между обратным прокси и веб-сервером?

Я прочитал отличный пост о сервере приложений и веб-сервере по адресу В чем разница между сервером приложений и веб-сервером?. Более того, Разница между прокси-сервером и обратным прокси-сервером хорошо объясняет, что такое прокси-сервер.

Я также узнал, что некоторые веб-серверы, такие как Apache, имеют встроенный обратный прокси-сервер. (Источник). Кроме того, в Википедии (https://en.wikipedia.org/wiki/Reverse_proxy) есть изображение который показывает веб-сервер и обратный прокси-сервер как отдельные объекты.

введите описание изображения здесь

Источник: https://en.wikipedia.org/wiki/Reverse_proxy (первоначально изображение предоставлено Privacy Canada). , теперь CC0, информация о лицензии)

Итак, я не уверен в разнице между веб-сервером и обратным прокси. Может кто-нибудь пролить свет?


person watchtower    schedule 15.12.2018    source источник


Ответы (1)


Веб-сервер прослушивает HTTP-запросы и реагирует на них, отправляя ответ HTTP.

Обратный прокси — это веб-сервер, который определяет, какой ответ делать, также реализуя HTTP-клиент.

Клиент A отправляет HTTP-запрос обратному прокси-серверу. Обратный прокси-сервер отправляет HTTP-запрос на сервер B. Сервер B отправляет HTTP-ответ обратному прокси-серверу. Обратный прокси-сервер отправляет эти данные в качестве своего HTTP-ответа клиенту А.

person Quentin    schedule 15.12.2018
comment
@ Квентин, спасибо за помощь. Я смущен. Не могли бы вы уточнить два момента: а) webserver listens for HTTP requests and responds by HTTP response б) web server also implements HTTP client. Было бы здорово, если бы вы могли представить поток, такой как (я предполагаю... пожалуйста, простите мое невежество) client --> reverse proxy --> webserver --> app server --> Database. Буду признателен за ваши мысли. - person watchtower; 16.12.2018
comment
Еще раз спасибо, Квентин. Не могли бы вы уточнить разницу между reverse proxy which is a webserver и other webserver. Насколько я понимаю, одно из отличий связано с тем, что reverse proxy server ведет себя как клиент. Какие еще отличия существуют? Мне любопытно. - person watchtower; 16.12.2018
comment
@watchtower — Других отличий нет - person Quentin; 16.12.2018