Временно измените файл 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
Настоятельно рекомендуем сделать резервную копию файла хостов перед тестированием.