Временно измените файл etc/hosts на рабочей станции Windows.

Есть ли инструмент, который позволяет человеку временно переключаться между различными конфигурациями etc/hosts, не устанавливая DNS?

Пример:

Я хотел бы быстро изменить конфигурационный файл etc/hosts, чтобы project1.com перенаправлял на локальный IP-адрес, например 192.168.10.50, без изменения информации на нашем DNS-сервере.

Зачем?

Мы разрабатываем несколько крупных проектов CMS. CMS разработан внутри виртуальной машины. Иногда нам приходится вносить большие изменения в систему CMS, которая уже находится в производстве. Разработчик должен получить доступ к продуктивной версии сайта, и через несколько минут он хочет перенаправить все запросы на локальную виртуальную машину.

Инструмент, который может легко переключаться между различными конфигурационными файлами etc/hosts, был бы идеальным.

Если возможно, не нужно, чтобы пользователи вручную редактировали файл etc/hosts.

2 ответа

Вы можете просто написать пакетное задание, которое может быть запущено, чтобы поменять файл hosts с одной версии на другую при запуске.

Вы можете создать пакетный файл, в котором пользовательский ввод затем копирует и заменяет файл хостов.

Возможно, это не идеальное, но простое и быстрое решение.

Просто создайте файлы хостов и сохраните их где-нибудь на компьютере, например C:\temp\hostfiles\.

Затем создайте файл .bat с таким содержимым:

      [@echo off
:ask
@echo Select hosts file project
@echo 1 - Project 1
@echo 2 - Project 2
@echo 3 - Project 3
@echo 0 - Exit
set INPUT=
set /P INPUT=Type input: %=%
If /I "%INPUT%"=="1" goto 1 
If /I "%INPUT%"=="2" goto 2
If /I "%INPUT%"=="3" goto 3
If /I "%INPUT%"=="0" goto exit
goto ask
:1
COPY "C:\temp\hostfiles\project1" "C:\Windows\System32\drivers\etc\hosts" /y >nul
@echo Project 1 hosts file is now active
goto exit
:2
COPY "C:\temp\hostfiles\project2" "C:\Windows\System32\drivers\etc\hosts" /y >nul
@echo Project 2 hosts file is now active
goto exit
:3
COPY "C:\temp\hostfiles\project3" "C:\Windows\System32\drivers\etc\hosts" /y >nul
@echo Project 3 hosts file is now active
goto exit
:exit
@pause

Настоятельно рекомендуем сделать резервную копию файла хостов перед тестированием.

Другие вопросы по тегам