2010-03-25 2 views
6

Я создаю программное обеспечение, которое позволяет пользователям либо иметь свой собственный субдомен (например: theirsubdomain.mydomain.com), либо указать CNAME из своего собственного домена в мой адрес веб-сайта (например: theirsubdomain.theirdomain.com).Хостинг программного обеспечения на моем сервере, который позволяет пользователям указывать свой домен на использование CNAME

Я связался с моим хозяином об этом, и первый вариант субдомена - это круто. Они установят скрипт субдомена wilcard для меня ...

CNAME они сказали, что я не могу делать автоматически. Мне придется вручную войти в мою учетную запись и добавить домен, чтобы указать на мой адрес веб-сайта, иначе apache обычно не будет искать файлы.

Это обычная практика или есть способ обойти это автоматизированным?

+0

Вы достигли этого? Я также заинтересован в реализации аналогичной функции. –

+0

Я тоже ищу эту функциональность; вы когда-нибудь находили способ сделать это? – Caesar

ответ

2

Проблема заключается в HTTP-заголовке. При запросе веб-страницы, браузер отправляет запрос, который начинается с:

GET /mypage.html HTTP/1.1 
Host: www.mysite.com 

Host пункт позволяет один веб-сервер для обслуживания страниц для нескольких доменов. Посмотрев на Host, сервер знает, что mypage.html должен поступать из его сохраненных файлов для mysite.com, а не из файлов myothersite.com, которые находятся на одном сервере.

Я предполагаю, что ваш сайт находится на общем веб-сервере в вашей принимающей компании, и они используют эту функцию, чтобы различать запросы на ваш сайт и запросы на другие сайты, которые находятся на том же виртуальном поле. Некоторые из этих виртуальных хостов, такие как HostGator, позволят вам указать другие домены, которые должны быть приняты в этой строке Host и откуда должны быть возвращены документы. Это часто более высокий сервис, предлагаемый компаниями. Например, на HostGator они говорят: «Планы хостинга« Ребенок и бизнес »допускают размещение неограниченных доменов только на одной учетной записи», однако базовый план Hatchling не позволяет этого.

Если у вас есть собственная арендная машина с собственной установкой Apache, вы можете самостоятельно обрабатывать эту информацию заголовка HTTP. Apache поддерживает виртуальные хосты, обратитесь к следующей документации: http://httpd.apache.org/docs/2.2/vhosts/

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

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