Есть ли лучший способ перенаправить домены моих клиентов?

Есть ли лучший способ перенаправить домены моих клиентов?

Я обслуживаю несколько веб-сайтов для своих клиентов на одном сервере. Во время разработки я просто создаю поддомен на своем собственном домене. Пример client.mydomain.example. Часто у моих клиентов уже есть домен и электронная почта от другого провайдера. Я не хочу размещать электронную почту для своих клиентов.

Я попробовал три разных способа настройки DNS:

  1. Создайте HTTP-перенаправление с clientdomain.example, www.clientdomain.exampleа затем запись CNAME для , www.clientdomain.exmpleуказывающую на временный поддомен на моем сервере client.mydomain.example.
  2. Иметь запись A от (*.)clientdomain.tldIP-адреса моего сервера, но оставить MX и т. п., чтобы они указывали на их текущий почтовый хост.
  3. Настроить собственные серверы имен и использовать их для домена моего клиента. Затем настроить так же, как 2.

Насколько я могу судить, у всех трех вариантов есть свои плюсы и минусы:

  1. Плюсы:Удобно. Я могу изменить IP-адрес на своем сервере, переместить его в другой серверный парк, настроить отказоустойчивость, балансировку нагрузки и т. д.
    Минусы:Я заставляю своих клиентов использовать www, и если у них уже есть сайт, non-wwwони могут пострадать от SEO-vise(?). Кроме того, дополнительная запись CNAME плохо влияет на скорость страницы.
  2. Плюсы:Никаких проблем с SEO или скоростью загрузки страниц. Простая настройка.
    Минусы:Если мне нужно изменить IP, мне нужно будет внести изменения в DNS для ВСЕХ моих клиентских сайтов.
  3. Плюсы:Никаких проблем с SEO или скоростью загрузки страниц. Если мне нужно сменить сервер, я могу сделать это для всех моих клиентских сайтов сразу, поскольку настройки DNS удобно настроены на моих собственных серверах имен.
    Минусы:Мне нужно запустить собственные серверы имен. Мне также нужно настроить записи MX и, возможно, другие записи DNS для моих клиентов.

На данный момент я предпочитаю первый способ, поскольку считаю, что в большинстве случаев плюсы перевешивают минусы.

Есть ли другой способ перенаправления с домена на сервер без указания IP-адреса?

Пояснение: Решение 1 работает для меня, но оно медленнее из-за двух шагов перед тем, как перейти к финальной записи A. В идеале я хотел бы указать non-wwwи wwwна домен моего сервера, но, насколько я знаю, это невозможно с записью CNAME, верно?

решение1

Обратите внимание, что a — CNAMEэто вовсе не HTTP-перенаправление.

  • Единственное перенаправление здесь — с example.comна www.example.comи его можно сделать постоянным. Дополнительное CNAME— на уровне DNS и будет кэшироваться, так что оно не повлияет на производительность или скорость сайта вообще.

  • Ваш веб-сервер должен знать домен клиента, независимо от того, кто размещает DNS.

Вот почему я бы предпочел ваш случай №1, с лучшим пониманием:

  1. Предоставьте клиенту www.example.com. CNAME client.example.net.возможность самостоятельно изменить IP-адрес, если это необходимо.
  2. Посоветуйте, как сделать перенаправление с адреса без www на адрес с www на их текущем веб-сервере.
  3. Привяжите фактическое доменное имя к вашему client.example.netв конфигурации веб-сервера.

В случае №3 вам придется не только технически размещать DNS-серверы, но и отвечать за выполнение обновлений всякий раз, когда клиенту потребуется новая сторонняя запись.

решение2

Итак, если я правильно понял, вы хотите иметь возможность после этапа разработки просто указать cname на ваш сервер (client.mydomain.tld) ​​и обрабатывать все остальное на вашем собственном сервере.

То, что я попробовал в своей настройке прямо сейчас с Cloudflare для управления записями DNS, это просто поместить две записи cname, одну www.client.tld и одну client.tld. После этого вы можете обрабатывать запрос на своем сервере и просто переписывать URL в соответствии с конкретными потребностями.

Я бы тоже выбрал ваш вариант номер один, так как с ним проще всего справиться.

А также я нашел некоторую информацию об использовании записей CNAME здесь: Следует ли использовать CNAME для поддоменов?

Связанный контент