Исключить подкаталог из разрешения хоста, установленного в / etc / hosts (с dnsmasq или чем-нибудь еще)

У меня есть локальный инструмент разработки ( LocalWP ), который устанавливает путь в мою локальную среду, изменив / etc / hosts .

Например, если я настрою свой сайт в Local на www.foo.com , он добавит следующее в файл hosts:

127.0.0.1 www.foo.com

Это нормально, но мне нужно исключить подкаталог (не субдомен) в этом домене, чтобы он преобразовался в другой (исходный) IP-адрес.

Конечно, это невозможно с etc / hosts , потому что это просто указатель DNS и не разрешает ничего, кроме домена. Однако мне интересно, есть ли другой инструмент, который я могу использовать, чтобы исключить подкаталог из текущего файла hosts и указать его на новый IP-адрес.

Мне интересно, может ли что-то вроде dnsmasq выполнить это, или если есть другой инструмент, который я мог бы использовать для некоторого условного поведения DNS на основе разрешения пути, а не только домена.

0
задан 31 December 2020 в 00:37
1 ответ

Вы не можете этого сделать.

Разрешение имени обрабатывается DNS (или / etc / hosts , или dnsmasq, или что-то еще), но все, что находится после первый / является частью протокола HTTP и как таковой обрабатывается вашим веб-браузером (на вашей стороне) и веб-сервером (на другой стороне); DNS (или / etc / hosts , или dnsmasq, или что-то еще) используется только для поиска IP-адреса, связанного с именем хоста, которое всегда будет одинаковым независимо от подкаталога, к которому вы пытаетесь получить доступ. ; фактический путь HTTP будет использоваться только после установления соединения.

1
ответ дан 3 January 2021 в 23:38

Теги

Похожие вопросы