Разные создатели разных CMS и скриптов по-разному подходят к вопросам проектирования своих систем. Сталкивался уже с тем, что при переносе сайта с тестового домена на основной вдруг оказывалось, что надо бегать по разным конфигам или сохраненным в базе настройкам и все переписывать. Это так мы разок попали, правя сайт, сделанный какими-то умельцами.
А так — выложил на локалку или тестовый сервак с идентичной тому, что в продакшене будет, конфигурацией — и работай. И поисковики не захавают тестовую площадку в свои индексы (тоже бывало).
«Развертывание» у dnsmasq заключается в установке пакета + создании файлика /etc/hosts.что-нибудь, аналогичному по синтаксису /etc/hosts, а потом прописывании
addn-hosts=/etc/hosts.что-нибудь
в /etc/dnsmasq.conf. Весь вопрос в составлении собственно этого файлика с хостами по проектам…
Ну осознание того, что на компе есть аж собственный DNS — наверное, да, супер. Но куда как проще сделать утилитку, которая будет в hosts писать. При этом работать этот метод будет везде и у всех, независимо от того, имеют ли они доступ к самопальному DNS, поднят ли этот DNS и так далее.
Утилитка — это конечно хорошо. Но написать подобную утилиту ничуть не проще, чем прописать конфиг в DNS-сервере. Другое дело, если утилитка будет наподобие денверовской — сканировать папки и создавать сразу и в Апаче виртуальные хосты. Избавить от разработчика от необходимости править конфиги вообще раз и навсегда — хорошая затея. Но тогда остается открытым вопрос с поддержкой wildcard — в нем иногда появляется необходимость, если человек работает над крупными проектами.
Спасибо. В необходимости wildcard на самом деле всё и началось, тестировать частные случаи приходилось через поход в hosts. Я уже об этом забыл напрочь, привык работать с собственным доменом.
Не хватает только утилиты для автоматического прописывания/удаления записи ДНС, виртуального хоста apache (можно через mod_macro) и создание базы с пользователем в mysql. Есть конечно разные панели управления, но уж очень они громоздки и любят перекраивать систему под себя.
Поднимал у себя на локальной машине DNS для разработки. Только у меня мотивы были другие — в ряде проектов требуется wildcard-поддомены. Для простого проекта, который крутится на одном домене прописать в /etc/hosts одну строчку несложно. Но когда у на сайте должно быть что-то вроде company1.myproject.lh, company2.myproject.lh и т. д. до бесконечности (или как поддомены профилей пользователей здесь — на хабре), то /etc/hosts прописывать уже неудобно.
С одной стороны для простых проектов практически нет разницы, прописывать домен в /etc/hosts или в конфиге DNS, с другой — свобод и возможностей DNS дает больше.
Кстати, насчет граблей с NetworkManager, когда resolv.conf прописывается.
Если нет возможности или не хочется прописывать DNS ручками в параметрах IPv4, а хочется так и оставить все полностью на DHCP, можно поступить следующим образом:
Запускаем любимый текстовый редактор с правами суперпользователя (sudo gedit, например) и открываем файлик /etc/dhcp3/dhclient.conf. Далее нам нужно раскомментировать (или добавить, если отсутствует) строку: prepend domain-name-servers 127.0.0.1;
В тему, вот тоже статейка: bestblog.name/2009/10/configure-dns-server-bind9/
Более-менее то же самое, только DNS ставится прямо на девсервер (один на всю комманду, что целесообразнее имхо). Сам ip девсервера лучше прописать как самый первый DNS в настройках роутера, так легче чем каждому компу отдельно прописывать.
Ubuntu, fake DNS Server или настройка локального DNS сервера для веб-разработчика