Мне интересно, если вы делаете прозрачное проксирование - если так, то могут быть более совершенные механизмы для достижения того, что вы хотите сделать, чем буквальное выполнение того, что вы назвали своей целью.
Но если вы хотите продолжать идти по этому пути, я думаю, вы можете использовать средство lighttpd mod_evhost
, чтобы легко использовать конфигурацию сайта по умолчанию:
Общий пример:
server.document-root = "/home/user/sites/default/site"
evhost.path-pattern = "/home/user/sites/%0/site/"
Если запрашивается example.org
и обнаруживается /home/user/sites/example.org/site/
, этот путь становится документированным.
Если запрашивается example.net
, но каталог с именем /home/user/sites/example.net/site/
не существует, тогдадокумент остается /home/user/sites/default/site
Если у вас есть определенные имена хостов, которые вы хотите обработать, вы можете добавить их к /etc/hosts
и ваш dnsmasq
будет обслуживать их.Это сработало бы, если бы у вас было несколько сотен хостов / доменов, которые вы хотели бы обработать, но если вы хотели обрабатывать все , то dnsmasq, возможно, не является правильным инструментом.
Я знаю, что В PowerDNS PipeBackend можно легко получить одинаковый ответ независимо от вопроса DNS;таким образом, вы можете легко перехватывать запросы и обрабатывать некоторых или всех запросов специально.Таким образом, вы можете ответить 192.168.0.1
для на каждый запрос, для некоторых запросов или всего, что вы можете запрограммировать.