Итак, вот история:
Я администрирую сервер, на котором запущено веб-приложение во внутренней локальной сети, например foo: 1234. Моя команда этим активно пользуется.
Теперь мы решили сделать это приложение доступным извне нашей сети, но мы не хотим устанавливать его на нашем веб-сервере. Я перенаправил внешний порт (скажем, 5678) на нашем (DDWRT) маршрутизаторе на foo: 1234, и это нормально работает.
Однако проблема заключается в том, что из-за определенных проблем с конфигурацией любой может просматривать страницу без входа в систему, если знает URL-адрес. Я хочу каким-то образом предотвратить это.
Я создал страницу (с логином) на нашем веб-сервере, которая перенаправляет на router: 5678 после аутентификации, но это не совсем решение; router: 5678 по-прежнему общедоступен.
Мой вопрос: как настроить так, чтобы порт перенаправлялся только после аутентификации?
Распространенный способ справиться с этой ситуацией - разместить проверяющий обратный прокси (например, apache) перед веб-сервером.
См. Например http://thelowedown.wordpress.com/2008/10/12/reverse-proxy-with-apache/