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

Перенаправлять запросы без www на www на Amazon Route 53

Я хочу перенаправить все запросы из example.com к www.example.com.

Желательно, чтобы это происходило на уровне DNS. Я попытался использовать записи PTR, но это не помогло, вернув 404.

wwww.example.com это НИКНЕЙМЫ для Elastic Load Balancer.

Какой самый простой способ добиться этого?

Если вы уже используете Route 53, вы можете использовать их собственный псевдоним «запись», чтобы решить эту проблему. Со стандартным DNS вы вообще не можете этого сделать, и вам нужно, чтобы веб-сайт отправлял 301 редирект. Конечно, вам все равно нужно отправлять 301 редирект или иметь дело с тем фактом, что некоторые запросы будут приходить без www (хотя вы должны отправлять 301 из соображений SEO).

Вероятно, самый простой способ сделать это - создать корзину S3 с именем голого домена и настроить свойства корзины для перенаправления с example.com на www.example.com, а затем в Route 53 создать псевдоним для голого домена. доменное имя, которое указывает на эту корзину S3.

Из комментариев

Чтобы усилить ответ, вот что мы сделали, чтобы это заработало:

  • Настроить ведро - неважно, как его зовут, и оно должно быть публичным.
  • В корзине щелкните свойства и щелкните хостинг статического веб-сайта. Щелкните перенаправить все запросы на другое имя хоста и введите сайт, на который будет направлен трафик.
  • Скопируйте конечную точку имени корзины и перейдите в размещенную зону в консоли Route53, добавьте CNAME с псевдонимом № к URL-адресу, с которого необходимо перенаправить, и вставьте конечную точку корзины в качестве ее значения.

Для псевдонима DNS вам просто нужно добавить запись CNAME или A в DNS. Смотрите мой ответ здесь: Как мне перенаправить www на не-www в Route53?

Для перезаписи URL (как при перенаправлении клиентов на другой адрес) вам понадобится некоторая форма логики перезаписи URL, выполняемая на веб-сервере. Есть несколько способов сделать это, и это зависит от того, какой веб-сервер вы используете. Самым популярным является использование mod_rewrite с apache. Этот сайт изобилует вопросами о mod_rewrite, несколько поисковых запросов должны дать то, что вы хотите.

Сделать это можно с помощью ведра s3. Шаги вставлены ниже:

Шаг 1. Создайте ведро s3.

Шаг 2. Сделайте ведро статическим хостингом с редиректом.

Шаг 3. Измените запись AWS Route 53 для домена без www.

A - Адрес IPv4 -> Псевдоним Да -> Целевой псевдоним (выберите конечную точку сегмента s3 из раскрывающегося списка).

Шаг 4. Сохраните набор записей.

AWS Route53 в настоящее время не поддерживает перенаправление того, что в настоящее время известно как запись APEX (корневой домен), на другое доменное имя, хотя они работают над решением.

Я добился этого, создав запись A (псевдоним), которая указывает мой корневой домен (DevOpsfolks.com) на IP-адрес моего решения, размещенного на WP ... И ответ - да, если IP изменится, вам понадобится изменить псевдоним. Однако провайдер гарантировал мне, что IP-адрес фиксирован, если только им не нужно выполнять какие-либо виды аварийного восстановления и менять оборудование, и в этом случае они соберут прокси-сервер для выполнения перенаправления, предоставив клиентам 45 дней для изменения их сопоставления.