1

Я не уверен, что это можно сделать красиво, но, возможно, у кого-то есть идея.

Ниже приведен макет моей установки

У меня есть 2 сайта (как в "центрах обработки данных"), расположенных за много миль друг от друга. "локальный" с именем "назначение" и удаленный с именем "источник" на эскизе.

На моем "локальном" сайте у меня есть 2 физических сервера esxi, на которых размещается куча всего (намного больше, чем то, что изображено, только то, что имеет отношение к изображению)

На моем "удаленном" сайте у меня есть 2 физических сервера, на которых работает CentOS 5, и они слишком стары для чего-либо и слишком дороги для установки нового сервера, поэтому я решил перенести некоторые ресурсы туда на мой локальный сайт.

На обоих серверах Apache размещается 1 многосайтовый WordPress и некоторые другие веб-сайты php и non-php. И оба они находятся за сервером nginx.

Я успешно переместил sourceA.com к определению как sourceA.com (DNS по-прежнему указывает на старый сайт, а nginx прокси-сервер для моего "локального" nginex, который прокси-сервер для Apache

Как это работает, как и ожидалось от внешнего мира.

Другие сайты и сервисы на источнике также функционируют нормально.

Моя проблема в том, что я хотел бы провести техническое обслуживание на сайте А из моей локальной сети, не заходя на source.com и не получая прокси обратно ...

Я думаю, что это разумный запрос :)

Теперь я могу настроить либо локальный файл dnsmasq, либо файл хостов моего ПК, чтобы при доступе к «siteA.com» из веб-браузера он делал то, что мне нужно.

Но теперь я не могу получить доступ к своей электронной почте на siteA.com, поскольку IP-адрес больше не попадает на "исходный" сервер, а попадает на мой сервер apache или nginx.

То же самое происходит, когда ssh-ы на другую сторону.

(да, я могу попробовать использовать один из других доменов и изменить мои сценарии и все остальное, но я действительно не хочу вдаваться в настройки и сценарии, которые я создал много лет назад. Если это не сломано, не исправляйте это. Они работают нормально, поэтому мне нужно что-то, что не может что-то сломать)

Я попытался настроить локальный псевдоним для этого домена (siteA). Но поскольку мультисайт настроен с псевдонимом "default" на «siteA.com», в тот момент, когда браузер нажимает на WP «siteA.local», он получает 302 для «siteA.com», переходит на исходный сервер и получает прокси.

Я думаю, что следующий шаг - взломать WP и не перенаправлять его на локальные псевдонимы, но тогда мне придется делать это каждый раз, когда WP обновляется. Я не смог найти плагин, который отключает это или каким-то образом позволяет настраивать фильтрацию того, что перенаправляется.

У кого-нибудь есть идея получше?

1 ответ1

0

В конфигурации WordPress есть две переменные для настройки URL сайта.

Обычная мудрость гласит, что для этих значений используется полный URL. Однако на моем WordPress с одним сайтом я не указываю схему или имя хоста. Это означает, что сайт перенаправляет с использованием относительного URL (с начальным / без схемы или имени хоста).

Он может работать с многосайтовым WordPress (я не знаю), но это означает, что к сайту можно получить доступ, используя более одного доменного имени.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .