Перенаправление на поддомен www через DNS
Можно ли установить запись DNS для перенаправления всех example.com/*
движение в www.example.com/*
?
Я запускаю приложение Sinatra в стеке Cedar от Heroku.
Я настроил дополнение Heroku для пользовательских доменов, и в документации обсуждается перенаправление трафика на определенный домен. Я также читал о том, как сделать это с Rack Rewrite. Тем не менее, мне интересно, есть ли способ сделать это через DNS, то есть, не попав в мое приложение.
5 ответов
Нет способа сделать то, что вы просите в DNS.
DNS просто разрешает имя хоста в IP-адрес, нет функции перенаправления
Если вы хотите, чтобы пользователи использовали ваше приложение только через www.example.com, вам придется делать это в приложении, используя подсказку по перезаписи стойки, с которой вы связались.
Предполагая, что вы можете менять DNS-серверы, вы можете использовать DNS-тип DNSimple. Это позаботится о вашей проблеме на уровне DNS.
Это упомянуто в этой статье Heroku об Избегании Голых Доменов.
Если вы на героку, то самый простой способ - это подстановочный домен
heroku addons:add custom_domains:wildcard
Это перенаправит все субдомены *.example.com, включая www на example.com.
Если у вас есть root-доступ к вашему серверу имен, вы должны добавить:
www IN A xxx.xxx.xxx.xxx
или же
* IN A xxx.xxx.xxx.xxx
для подстановочного знака, где xxx.xxx.xxx.xxx - ваш IP, или
www IN A myapp.heroku.com.
* IN A myapp.heroku.com.
если у вас неизвестный / динамический IP
Краткий ответ: укажите свою "голую" запись домена на 174.129.25.170
,
Длинный ответ: wwwizer.com предлагает бесплатный сервис перенаправления. Он перенаправляет на любой домен, который вы пытались открыть, просто добавляя "www". перед этим. Для тех, кто интересуется подробностями, есть FAQ на http://wwwizer.com/naked-domain-redirect.
Если вы пользуетесь Службами Google, у них есть функция, позволяющая перенаправить ваш голый домен ( http://example.com/).
Вы просто добавляете их серверы как записи A в свой DNS.
Посмотрите в настройках домена панели управления.
URL должен быть как ниже. Просто замените example.com своим доменом.
https://www.google.com/a/cpanel/example.com/DomainSettingsDomains