Сопоставление доменов с php?

Сегодня я играю с доменами с php,

пример

www.wordpress.com is our main site
www.friend1.com is my new domain
www.friend2.com is my new domain
www.friend3.com is my new domain

в

www.friend1.com the same as www.wordpress.com/profile/friend1 ?
www.friend2.com the same as www.wordpress.com/profile/friend3 ?
www.friend3.com the same as www.wordpress.com/profile/friend2 ?

как WordPress и т.д. делают такие вещи? они делают это на стороне сервера? или есть способ делать такие вещи в php?

* редактировать, если вы все еще не получили его,

Вот пример. Допустим, у вас есть идентификатор друга deviantart на myfrienddeviantartid.devaintart.com, и предположим, что вы являетесь администратором deviantart. Вы хотите создать дополнительный сервис, чтобы ваш друг мог парковать свой собственный домен на deviantart.com.

2 ответа

Это традиционно делается с помощью mod_rewrite внутри конфигурации Apache. Это переназначает URL-адреса.

  • Для сервера Apache http он использует директиву ProxyPassReverse из mod_proxy или директивы из mod_rewrite

Директива ProxyPassReverse позволяет Apache настроить URL-адрес в заголовке Location в ответах HTTP-перенаправления. Например, это важно, когда Apache используется в качестве обратного прокси-сервера, чтобы избежать обхода обратного прокси-сервера из-за перенаправлений HTTP на внутренних серверах, которые остаются за обратным прокси-сервером.

Предположим, что локальный сервер имеет адрес http://wibble.org/; затем

ProxyPass / mirror / foo / http://foo.com/
ProxyPassReverse / mirror / foo / http://foo.com/

будет не только вызывать локальный запрос для http://wibble.org/mirror/foo/bar для внутреннего преобразования в запрос прокси на http://foo.com/bar (функциональность, которую ProxyPass предоставляет здесь). Он также заботится о перенаправлениях, отправляемых сервером foo.com: когда он перенаправляет http://foo.com/quux на http://foo.com/quux Apache настраивает его на http://wibble.org/mirror/foo/quux перед отправкой ответа перенаправления HTTP клиенту.

  • Для MS(R) IIS используйте модуль перезаписи:

Легко заменяйте URL-адреса веб-приложений, чтобы получать удобные результаты для пользователей и поисковых систем. Перезапись URL-адресов позволяет веб-администраторам легко заменять URL-адреса>, сгенерированные веб-приложением в ответном HTML, на более удобный и удобный для поисковых систем эквивалент. Ссылки могут быть изменены в HTML-разметке, созданной веб-приложением за обратным прокси-сервером. Перезапись URL упрощает перезапись содержимого исходящих ответов и перезапись заголовков с помощью правил перезаписи исходящих запросов, которые работают с HTTP-запросами и заголовками ответов и с переменными сервера IIS.

Кроме того, вы должны убедиться, что субдомен настроен с провайдером DNS для передачи всех запросов на главную.

Пример записи DNS:

NAME                    TYPE   VALUE
--------------------------------------------------
exampleXYZ.com.         CNAME  example.com.
example.com.            A      192.0.2.23

Ref:

  1. https://en.wikipedia.org/wiki/CNAME_record

  2. http://www.akadia.com/services/apache_redirect.html

  3. http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

  4. http://www.iis.net/downloads/microsoft/url-rewrite

Другие вопросы по тегам