Как сервер имен моего общего хоста разрешает http://servername.com/~username/ в мой домен верхнего уровня?

Недавно я переместил свой веб-сайт на общий хостинг по адресу asmallorange.com, но мне пришлось настроить свой домен на использование их предоставленных серверы имен для правильного разрешения сайта. Я был полон решимости сохранить контроль над DNS домена, но я не мог найти способ сделать так, чтобы мой домен верхнего уровня разрешал общее местоположение, которое было в формате

server.asmallorange.com/~username

Итак, я знаю, что мне что-то здесь не хватает, мой вопрос таков:

Что в записи их серверов имен/DNS позволяет server.sharedhost.com/~username выступать в качестве домена верхнего уровня? (например, http://topleveldomain.com)


person Kit Roed    schedule 23.09.2008    source источник


Ответы (4)


Ничего. DNS просто сопоставляет topleveldomain.com с server.sharedhost.com. Это веб-сервер, который просматривает заголовок Host: topleveldomain.com и знает, что он эквивалентен server.sharedhost.com/~username.

person cjm    schedule 23.09.2008

Ничего. У них ваше доменное имя разрешается в тот же IP-адрес, что и server.asmallorange.com, но затем они сообщают своему веб-серверу доменное имя topleveldomain.com и сообщают веб-серверу, что оно совпадает с server.asmallorange. .com/~имя пользователя.

Виртуальные хосты — это не уловка DNS, это уловка HTTP — запрошенное имя хоста отправляется браузером в поле Host: каждого запроса.

person Daniel Papasian    schedule 23.09.2008
comment
HTTP 1.1 требует заголовка Host:. По этой причине виртуальным хостам обычно требуется HTTP 1.1. HTTP 1.0 не имеет заголовка узла, от которого сервер может отказаться. - person davenpcj; 23.09.2008
comment
Хотя HTTP 1.0 не определял заголовок Host:, ничто не мешает клиентам версии 1.0 включить его. Изменить для этого клиента 1.0 несложно, и почти все оставшиеся клиенты 1.0 делают это. - person cjm; 30.09.2008

У apache есть «mod_user», который вы можете включить в своем файле конфигурации apache. Это достигается с помощью этого и виртуальных хостов.

person gehsekky    schedule 23.09.2008

Виртуальные хосты в Apache — вот как это делается.

Однако то, что вы настроили DNS так, чтобы «mydomain.com разрешал 1.2.3.4», что является их IP-адресом, не означает, что вы отказываетесь от контроля над своим доменным именем.

person Rory    schedule 24.12.2008