LINUX.ORG.RU
ФорумAdmin

Множестенные домены-альясы на главный домен - как проще?

 


0

4

Добрый день.

Есть задача - поддерживать N (N - до 10) доменов.

Есть основной домен, например, example.com

Есть сайт, висящий на нём. Например, http://www.example.com редиректит на example.com, т.е. example.com - основной домен.

Кроме этого домена есть еще несколько, типа example2.com (с http://www.example2.com), example3.com (тоже с www), exampleN.com (может с www, а может и без). Проблема в том, что доменов много и список их постепенно увеличивается. Отказаться от них нельзя, потому что есть миллионы ссылок, ведущих на них.

Все зоны имеют свои A-записи, ведущие на один хост, например, HOST.

Суть в том, что сервер, где держат example.com, иногда переезжает. И, соответственно, все А-записи всех доменов приходится менять.

В начале была мысль, что CNAME всех спасёт, но оказалось, что CNAME не может быть для основного домена, только для поддоменов. Т.е. я могу прописать

www.example2.com CNAME example.com

Но не могу

example2.com CNAME example.com

Что делают обычно в таких ситуациях? Неужели нету простого способа, без редактирования всех записей? Понятно, что редактирование можно автоматизировать, но хотелось бы обойтись без этого.

★★★★★

Не делай A для example2.com, сделай только CNAME www.example2.com. Браузеры догадаются сами дописать www, если без него ничего не нарезолвится.

const86 ★★★★★
()
Последнее исправление: const86 (всего исправлений: 1)

Если домены действительно идут по порядку example1.com example2.com example3.com то поможет добрый $GENERATE

Если нет до динамический обновления или что-то типа

find /var/cache/bind -type f -name 'db.*' -exec sed -i 's/8.8.8.8/8.8.4.4/g' {} \;

Disova
()
Ответ на: комментарий от const86

Браузеры догадаются сами дописать www, если без него ничего не нарезолвится.

Ага, теперь я знаю, почему у некоторых доменов не прописан без-www'шная зона... :-)

AngryElf ★★★★★
() автор топика
Ответ на: комментарий от Disova

Заскриптовать - понятно. Думалось, что можно как-то проще.

AngryElf ★★★★★
() автор топика
$ cat ./etc/nsd.conf 
server:
        verbosity: 1
        database: "" # disable database

zone:
        name: "foo.com"
        zonefile: "master/foobar"

zone:
        name: "bar.com"
        zonefile: "master/foobar"
$ cat ./zones/master/foobar
$TTL 1h

@       IN SOA ns.foobar.com. root.foobar.com. ( 20160101 1d 2h 4w 1h )

@       IN A 127.0.0.1
www     IN A 127.0.0.2
# nsd -d
[2015-12-20 00:43:57.696] nsd[16180]: info: zone bar.com read with success
[2015-12-20 00:43:57.697] nsd[16180]: info: zone foo.com read with success
[2015-12-20 00:43:57.697] nsd[16180]: notice: nsd started (NSD 4.1.6), pid 15467
$ dig +short @127.0.0.1 www.foo.com
127.0.0.2
$ dig +short @127.0.0.1 www.bar.com 
127.0.0.2
edigaryev ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.