Назад | Перейти на главную страницу

Как настроить домен, который не использует префикс www в Azure / EC2

Предположим, у меня есть домен foo.com, где у меня есть ряд страниц вроде foo.com/123 и foo.com/456 и т.д. Я хочу использовать домен и предоставлять ссылки без www префикс. Эти страницы также будут иметь ссылки на другие страницы (и друг на друга) без www префикс.

Я использую Azure для размещения нашего сайта, который аналогичен EC2 в том, что в домене не может быть записи A, потому что серверная среда виртуализирована. Таким образом, и Microsoft, и Amazon советуют вам использовать записи CNAME, чтобы указать вашему домену на запись A, которой они управляют. В случае с Azure моя запись CNAME указывает на запись cloudapp.net (которой управляет Microsoft):

foo.com  CNAME  foo.cloudapp.net

где foo.cloudapp.net это мой домен, который я установил в Azure.

Я сталкиваюсь со всевозможными проблемами, связанными с доставкой электронной почты и тем, что разные люди не могут загрузить сайт. Два разных поставщика серверов имен и мой хостер говорят мне, что это нарушает RFC, чтобы корневой домен был записью CNAME, поэтому мои проблемы носят спорадический характер.

Я удивлен услышать это, поскольку в наши дни вы видите так много сайтов, размещенных на EC2 или Azure, и не использующих www префикс. Как эти сайты настроены так, чтобы они могли использовать только foo.com (без www префикс)?

Обновление: пока я задавал вопрос о EC2 или Azure, я специально ищу информацию об Azure.

Веб-сайты, работающие на EC2, могут обслуживаться через вершину зоны или голый домен, например example.com, с записями A. Тот факт, что сервер работает на виртуальной машине, на это не влияет. Многие сайты делают это, включая большинство моих.

Если вы используете службу, для которой требуется CNAME, например Elastic Load Balancer от Amazon, то вы не можете указать на нее с вершиной зоны или голым доменом, таким как «example.com», поскольку CNAME не могут использоваться с голыми доменами. Это ограничение спецификации DNS, а не что-то связанное с облачными реализациями или виртуализацией.

Вы по-прежнему можете использовать Amazon Elastic Load Balancer с вершиной зоны или открытым доменом, например example.com, если вы размещаете свой DNS для этой зоны с помощью службы Amazon Route53 DNS. Amazon делает уловки, чтобы динамически сопоставить запись A с результатами того, что CNAME вернул бы, соблюдая спецификацию DNS, обеспечивая гибкость и мощность, которые должны предоставить ELB.

http://aws.typepad.com/aws/2011/05/elastic-load-balancing-ipv6-zone-apex-support-additional-security.html

Я ничего не знаю об Azure. Вы нарушаете спецификацию DNS в том, как вы пытаетесь его использовать.

Вы можете сделать это, если ваш DNS размещен на DNSimple используя их НИКНЕЙМЫ тип записи, или DNSMadeEasy используя их ИМЯ тип записи.

Cloudflare's DNS также позволяет это.

Кроме того, если вы используете EC2, ELB и сервис Amazon Route53 DNS, он также возможно.