/ / Как да се свържа директно сървър зад обратната прокси с клиент - apache, прокси, обратно

Как да се свържете директно сървър зад обратната прокси с клиент - apache, прокси, обратно

Въпросът е свързан с Apache, mod_proxy.

Имам сайт с външен IP = X, вътрешен IP = 10.0.0.1 захранван от Apache, който работи като обратна прокси за изображения:

ProxyPassMatch *..(jpg|gif|png) http://10.0.0.2/handle_image.php

Когато клиент с IP = Y се свърже с IP = Xзаявявайки logo.jpg, Apache на 10.0.0.1 се свързва към 10.0.0.2 и извлича изображение от него; след това изпраща изображението на клиента на Y. Това означава, че данните за изображенията преминават през 10.0.0.1.

Искам клиента на Y да получи данни директно от10.0.0.2 като същевременно поддържа връзка с X; т.е. клиентът смята, че получава данни от X, но всъщност изпомпва изображение от 10.0.0.1, така че сървърната мрежа в X да не се зарежда от прехвърляне на изображения.

Както разбирам, трябва да е малко TCP сесия отвличане от сървъра на 10.0.0.2 на връзката между X и Y.

Как да направя това?

РЕДАКТИРАНЕ За да стане по-ясно, добавя графика.въведете описанието на изображението тук

Отговори:

0 за отговор № 1

Действителният подход, който описвате, не е възможен с браузър. Не можете да инициирате връзка от бекенда да се браузърът, той трябва да дойде от браузъра до бекенда.

Какво можете да направите, е да използвате websockets, за да създадетепълен дуплекс връзка от задната страна към клиента чрез прокси сървър. По този начин, задната част може непрекъснато да прокарва нови неща в браузъра, но минава през прокси, който просто го тунелира от бекенда до браузъра в сурова форма.

С httpd (Apache), това е възможно чрез използване mod_proxy_wstunnel Друга възможност е да постигнете това mod_lua, но това е друга история.