У меня есть сервер A, на котором www.mysite.com
Я хочу создать и разместить сайт на сервере B, но сконфигурирую его так: www.mysite.com/theSiteAtServerB
TheSiteAtServerB - это совершенно другой сайт по сравнению с www.mysite.com и находится на совершенно другом сервере, но клиент хочет использовать www.mysite.com и обслуживать контент для TheSiteServerB под тем же URL-адресом.
Это вообще возможно? Конфигурация DNS? или с помощью какой-то магии Apache?
Спасибо!
РЕДАКТИРОВАТЬ 1:
Чтобы уточнить, я хотел бы добиться этого без перенаправления или перезаписи URL-адресов.
http://www.mysite.com/ & http://www.mysite.com/siteAtServerB являются отдельными сайтами> технически с разными IP-адресами, я хотел знать, можно ли изменить DNS, чтобы я мог указать www.mysite.com --------------> ServerA (в настоящее время) www.mysite.com/theSiteAtServerB --------------> СерверB
РЕДАКТИРОВАТЬ 2 ** Чтобы убедиться, что я понимаю поток, будет ли он работать следующим образом:
1- Веб-запрос поступает на сервер A
2- mod_rewrite обрабатывает запрос по согласованному правилу
3- mod_proxy извлекает контент с исходного сервера и возвращает его обратно в ответ
С точки зрения безопасности, будет ли большая часть блокировки происходить из-за простого использования выражения regex> для mod_proxy? Основываясь на этом: http://httpd.apache.org/docs/2.0/mod/mod_proxy.html#access, Я предполагаю, что> мне также нужно будет установить доступ прокси? Но если сайт является общедоступным, что бы я поместил> в блок доступа к прокси-серверу, разрешил бы я *
То, что вы пытаетесь достичь, можно сделать с помощью mod_proxy, который обычно не включается в средах с общим хостингом из-за довольно серьезных проблем безопасности, которые он может разрешить, если не заблокировать его правильно. Если вы не сделаете это правильно, вы предоставите нечестным людям открытый прокси-сервер для серфинга в Интернете с использованием IP-адреса сервера.
Если у вас есть полный доступ к веб-серверу, вы можете включить mod_proxy. Это использует mod_rewrite для настройки правильного прокси:
RewriteRule ^/SiteAtServerB/(.*) http://serverb/site/$1 [P,L]
Чем точнее вы можете предоставить регулярное выражение, тем лучше вы будете защищены от гнусного бизнеса.
Это сделает именно то, что вы ищете. ServerB увидит запрос, поступающий с IP-адреса ServerA (в любом случае, один из них), клиенты будут видеть только URL-адрес, который не меняется.
Вы можете сделать это с помощью глобального балансировщика нагрузки (так что mysite.com преобразуется в LB, который затем перенаправляет на serverA или serverB, в зависимости от вашего бюджета и инфраструктуры, и ваш хостинг-провайдер (-ы), вероятно, может помочь с этим. .
«Магия Apache» будет означать перенаправление.
Или, как также предлагается здесь, проксирование.
Клиентский компьютер будет запрашивать DNS только о доменном имени без каких-либо других частей URL-адреса, влияющих на то, что он запрашивает (технически, Могут быть задействованы записи SRV, но они будут запрашиваться на основе информации СЛЕВА от имени домена!). Таким образом, DNS НЕ МОЖЕТ знать, куда вас отправить.
Если вы хотите узнать подробности, могу ли я предложить вам настроить wirehark, начать захват, открыть веб-браузер и любой сайт в нем, который вы давно не посещали, остановить захват и посмотреть, как все работает за кулисами ... .