Перенаправление на поддомен 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

Другие вопросы по тегам