2016-01-22 2 views
0

У меня есть два сервера. Например, назовем их SERVER-A с доменным именем www.server-a.com и SERVER-B с доменным именем www.server-b.com. Мои кодовые базы написаны в magento и laravel.Связь между двумя доменами или субдоменами без ссылки на url

Теперь мое требование заключается в том, что, когда я обращаюсь к www.server-a.com/example, он фактически отображает страницу с сайта www.server-b.com/example, не переписывая URL-адрес.

Перенаправление было хорошим вариантом, но поскольку я не могу помешать текущему URL-адресу, так как с ним связано много seo, поэтому я хочу создать альтернативный вариант.

Я проверил много вариантов для такого рода сообщений, но все варианты, которые почему-то кажутся неполными с той или иной точки зрения. Возможные варианты:

  1. Загрузите внешнюю страницу через IFRAME.
  2. Используйте php fopen (www.server-b.com).
  3. Связь CORS с использованием jsonp или document.domain.
  4. Идея реализации 3-го слоя между двумя серверами с возможностью их внутреннего общения через себя (с помощью Node.js и др. -> до сих пор пытаются выяснить, где я могу пойти с этим) и т.д.

Но ни один из них не дает мне разрешение, которое мне нужно. Является ли это на самом деле способом, когда я просто набираю www.server-a.com/example в URL-адресе, а страница, загружаемая на самом деле, находится на сайте www.server-b.com/example, не переписывая URL-адрес или не позволяя пользователю узнать, что он покинул исходный сайт, на который он приземлился.

ПРИМЕЧАНИЕ: - Я являюсь владельцем обоих серверов в этом случае. Также отдельные домены могут быть изменены на субдомены в соответствии с требованиями. PLS не стесняйтесь делать какие-либо изменения в базовой конфигурации для достижения этого требования.

ответ

0

Mod прокси

на сервер А апач конфигурации

ProxyPass /example http://www.server-b.com/example 
ProxyPassReverse /example http://www.server-a.com/example 

Первая строка: Каждый запрос на сервер-а/пример будет перенаправлять http://www.server-b.com/example Вторая строка: Когда сервер-б ответить на запрос, url show будет http://www.server-a.com/example

Не забывайте, что вам необходимо установить mod_proxy и включить его на apache.

+0

Спасибо Жоао. Я тоже посмотрел на этот метод. Но не был уверен, будет ли он переписывать URL. Итак, вы ясно дали понять. Теперь проблема в том, что у меня есть nginx. Поэтому нужно проверить, разрешен ли mod_proxy между nginx и apache. В любом случае, спасибо за ответ. –

Смежные вопросы