Может ли запись CNAME DNS указывать на подкаталог

Ответы:

48

DNS-записи отображают только IP-адреса на имена хостов, поэтому одним словом, нет

Однако вы можете использовать конфигурацию имени хоста на своем веб-сервере, чтобы обслуживать подкаталог при поступлении запроса. Например, если что-то перенаправляет что-то на .domain.com / равно что-то на elelse.domain.com/downhere. Это будет зависеть от программного обеспечения вашего веб-сервера, а не от DNS.

Кевин Куфал
источник
Спасибо, поэтому для Apache я могу редактировать файл apache2.conf, который я предполагаю
Hannes de Jager
4
В частности, в Apache вы будете использовать функцию VirtualHosts.
Скотт Пак
20

Записи CNAME являются частью Системы доменных имен, системы именования в Интернете. Их единственная цель - переводить имена хостов, например, www.example.comв IP-адреса. Вы не можете прикрепить имена папок или запросы к CNAME. Чтобы быть точным, CNAME преобразуется в другие имена, которые сами могут быть A-записями, указывающими на IP-адреса или другие записи CNAME.

Ваш пример my.domain.com/subdir1или лучше http://my.domain.com/subdir1URI, унифицированный идентификатор ресурса, который используется для идентификации или наименования ресурса в Интернете - в вашем случае это ресурс HTTP.

Таким образом, обходной путь может заключаться в том, чтобы определить CNAME для другого заголовка узла, который перенаправляет в вашу папку с помощью ответа о состоянии HTTP 301 («перемещен навсегда») :

-> Browser requests subdir1.domain.com 
-> Server sends a HTTP status code 301 to the browser:
   REDIRECT my.domain.com/subdir1

Все веб-серверы и языки веб-программирования предоставляют команды для этих типов перенаправлений.

splattne
источник
8

То, что вы просите, это перенаправление URL. Запись CNAME НЕ будет выполнять это.

Вероятно, проще всего было бы использовать файл .htaccess или (что еще проще) написать быструю веб-страницу с мета-обновлением или перенаправлением javascript для автоматического перенаправления пользователя.

Вы не упомянули свою ОС или веб-сервер, поэтому я просто пытаюсь дать лучший общий ответ, который я могу.

KPWINC
источник
4

Нет. Записи CNAME могут указывать только на записи DNS. Вы ищете HTTP перенаправление.

Brandon
источник