Я создаю одну страницу существующего веб-сайта для клиента, но они попросили меня разместить ее в своей учетной записи, и они могут «указывать на нее» со своего хоста. Они хотят сохранить свой URL в названии. Например www.theirsite.com/new-page
Как лучше всего этого добиться?
Если они создают субдомен (subdomain.theirsite.com) и указывают A-запись на страницу с моим IP-адресом (ip.ip.ip / page), есть ли способ сохранить желаемый URL-адрес (www.theirsite.com/ новая страница)?
Если они хотят www.theirsite.com
для отображения в URL-адресе в адресной строке браузера, затем сервер, который отвечает на соединения для www.theirsite.com
должен служить что-то для /new-page
, нет способа просто полностью разгрузить все в другое место - не с помощью поддоменов или обмана DNS A-записи (*).
Но есть очень простой способ, о котором пока не упоминалось - /new-page
обслуживает страницу-заполнитель с iframe
элемент, и это указывает браузеру загружать контент с вашего сервера под другим именем - поддоменом или любым другим именем. Это отобразит их имя в строке URL-адреса, и браузер установит другое соединение для загрузки контента с вашего сервера. Вы можете создать поддомен их сайта, и ваш сервер будет отвечать на это имя, чтобы он выглядел как связанный сервер.
Для любого, кто смотрел исходный код, было бы очевидно, что он загружался откуда-то еще, но если на сайте нет какой-либо активной части входа в систему, безопасности, которая требует, чтобы все было с точно таким же именем, или задействованных сертификатов HTTPS, это будет работать Хорошо, и для любого обычного просматривающего или обычного пользователя он будет отображаться как их сайт в строке URL.
Способ интеграции, чтобы он выглядит как часть их сайта, но размещается вами, с обратным прокси, как предлагает @sam_pan_mariusz.
Здесь их веб-сервер отвечает на соединение, их веб-сервер загружает контент с вашего сервера, а их веб-сервер отправляет контент обратно в браузер. Для этого потребуется конфигурация на их сервере, и это добавит больше работы на их сервере, но для внешнего мира /new-page
практически неотличим от любого другого контента на сайте.
(*) Невозможно указать A-запись на конкретную страницу, «A-записи» находятся в DNS и просматриваются очень рано, а URL-пути появляются в HTTP-запросах намного позже, после открытия соединения; это очень разные слои, и их нелегко смешать.
Не уверен, правильно ли я понимаю, в чем ваша проблема ... но если вы хотите сопоставить разные виртуальные подкаталоги веб-сайта с разными хостами, вы можете сделать это с помощью обратного прокси. Apache httpd имеет модуль (mod_proxy_http) для этого.
Если перед веб-сайтом уже есть прокси, внесение изменений должно быть очень простым. В противном случае его придется настраивать с нуля.
Если я вас правильно понял: у них есть сайт http://www.theirsite.com/, поддерживаете его где-нибудь и хотите, чтобы вы поддерживали страницу http://www.theirsite.com/somepage где-нибудь еще.
Если я прав, и вы хотите, чтобы все было просто, ответ - НЕТ. Если они хотят, чтобы вы размещали его отдельно, он будет на отдельном доменном имени (возможно, субдомен, но все же другое имя, например http://sub.theirsite.com/somepage). Если они хотят сохранить свое полное доменное имя, им нужно будет разместить его самостоятельно.
Для таких случаев есть решения, но они сложные. Они могут размещать все на своем сервере, но обратное проксирование этого адреса страницы на другой сервер, который обслуживается вами. Если они могут выполнить эту настройку, он сделает это, но им необходимо выполнить изменения конфигурации на своем сервере хостинга.