В моем месте работы у нас закончились доступные IP-адреса для присвоения нашему общедоступному серверу UAT. Из-за этого мы направляем весь трафик для портирования 80 на нашем сервере UAT от порта 9999 на другом IP-адресе серверов. Это хорошо работает в большинстве случаев, но тестирование внешних служб, таких как PayPal становится невозможным, поскольку PayPal удаляет номера портов из URL обратного вызова, таким образом, наш общедоступный сервер UAT никогда не может взаимодействовать с платежными шлюзами.
Как обходное решение, я предложил следующее:
Купите самый дешевый Цифровой Океанский контейнер с уникальным IP-адресом.
Укажите на весь домен UAT DNS на этот контейнер.
Блок весь трафик кроме контейнера с сервера UAT.
Настройте некоторый обратный прокси для маршрутизации всего трафика от, ДЕЛАЮТ контейнер к серверу UAT.
Первая часть не знает, как сделать, обратная часть прокси. Я предполагаю, что мне были бы нужны Nginx или Varnish. Однако это решение должно обработать сеансы пользователя, и загрузки файла также с ДЕЛАЮТ контейнер, действующий ТОЛЬКО как прокси и не хранящий эту информацию.
Действительно ли это возможно? Если так, как я пошел бы об этом? У меня нет предпочтения ОС, или программное обеспечение для ДЕЛАЮТ контейнер, таким образом, любые предложения приветствуются.
Не говорите мне, как мы должны просто получить другой IP-адрес вместо того, чтобы идти для этого долгого обветренного решения. Я хорошо знаю, что это - излишество, однако в настоящее время мы не можем купить никакие другие блоки IP, таким образом, это - временная мера, пока этого не происходит.
Обратный прокси - прекрасное решение. Таким образом, у вас могут быть десятки серверов на одном общедоступном IP-адресе.
Я ничего не знаю о Digital Ocean и вашей среде хостинга, поэтому могу только рекомендовать разместить прокси как можно ближе к серверу приложений, чтобы избежать двойных задержек.
] Обратные прокси-серверы хорошо работают в большинстве конфигураций, хотя часто требуют специальной настройки в приложении. Чтобы избежать проблем, полезно сопоставить идентификаторы URI с одинаковыми именами на сервере приложений и прокси ( http://proxy.host/uri в http://app.host/uri и нравится). Apache httpd предлагает надежное прокси-решение, см. Руководство для ProxyPass
, ProxyPassReverse
, ProxyPreserveHost
.