Моя компания в настоящее время имеет единственный веб-сервер на базе Windows, который используется для обслуживания нашего основного веб-сайта вместе с некоторыми приложениями .NET, которые находятся в подкаталогах.
Мы только что завершили разработку новой версии нашего основного веб-сайта на Drupal. Мой босс не хочет устанавливать PHP на наш текущий сервер.
У нас есть возможность создать виртуализированный веб-сервер, на котором можно установить PHP, и мы можем обслуживать наш основной веб-сайт. Мы можем сделать это ЛАМПА или Windows. Однако мой босс хочет, чтобы все приложения .NET оставались на текущем сервере.
Как я могу настроить виртуализированный сервер, на котором запущен новый главный сайт, для «проталкивания» запросов подкаталогов на исходный сервер?
Вы, вероятно, захотите использовать что-то вроде Apache обратный прокси директивы. Может быть так просто, как:
ProxyPass /foo/ http://www.windowsbox.com/foo/
ProxyPassReverse /foo/ http://www.windowsbox.com/foo/
Это перенаправит все запросы в папку / foo / на вашем сервере Apache в папку / foo / на вашем Windows Box. Все ссылки на страницах в окне Windows будут переписаны для правильной работы.
Возможно, вам также придется загрузить все прокси-модули, перечисленные в верхней части эта страница через LoadModule
.
- Кристофер Карел
Я использую SQUID для прозрачной перезаписи с помощью простого скрипта PERL, выполняющего регулярное выражение, указанное с помощью redirect_program.
Другие веб-прокси также поддерживают перезапись. Кристофер Карел идентифицированный Mod_proxy Apache и Nginx поддерживает это. Фактически, я был бы удивлен, если бы веб-прокси не поддерживал перезапись.
Убедитесь, что вы понимаете разницу между перезаписью и перенаправлением: