Несколько экземпляров

Несколько экземпляров

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

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

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

Есть идеи?

РЕДАКТИРОВАТЬ:Важной особенностью является возможность одновременной работы двух браузеров, оба из которых просматривают сайт some-address.com, но при этом один браузер направляет запросы на сервер , 1.2.3.4а другой браузер направляет запросы на сервер 5.6.7.8.

РЕДАКТИРОВАТЬ:(16.03.14)

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

Итак, чтобы прояснить:

Существует три веб-сервера. Production, Test и Development. Каждый из них запускает многопользовательское приложение, которое настраивается на основе имени хоста, используемого для доступа к нему. Концептуально это похоже на систему управления контентом или блог-движок, который позволяет запускать несколько сайтов с одного и того же экземпляра сервера. Вы просто указываете имя хоста на сервере, и какое бы имя хоста ни использовалось для доступа к нему через сопоставление имени хоста HTTP 1.1, это и есть отображаемый им сайт.

Любое решение, которое просто переписывает файл хоста, не работает из-за необходимости запускать несколько окон браузера одновременно на разных сайтах, производство, разработка, тестирование и т. д. Поэтому простое постоянное изменение файла хоста не работает, поскольку оно влияет на все экземпляры браузера. Если вы измените сопоставление для одного браузера, то другие браузеры теперь также будут сопоставлены с этим сервером, поэтому любые последующие запросы будут отправляться на неправильный сервер.

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

Это может быть выполнимо с помощью Firefox Portable, поскольку я думаю, что он использует собственные файлы конфигурации для каждой установленной копии, но проблема в том, что стороннее программное обеспечение, используемое для администрирования сайтов, не работает с Firefox (сами сайты работают, но инструменты администрирования — нет, однако они прекрасно работают с Chrome, IE и Opera... и у меня нет доступа к исходному коду, чтобы это исправить).

решение1

Squid решил эту проблему для меня. Я думаю, что многие прокси-серверы могли бы сделать то же самое.

В частности, мне пришлось установить Squid. Затем изменить squid.conf так, чтобы он обращался к альтернативному файлу hosts. Вот строка, которую нужно изменить:

#hosts_file /etc/hosts

В моем случае я использовал hosts_file /etc/hosts-squid. Я создал /etc/hosts-squidфайл и изменил файл hosts-squid так, чтобы он давал мне доступ к новым IP-адресам, которые я хотел для данного URL. Это все, что мне нужно было сделать для настройки прокси-сервера Squid.

Затем я создал команду для запуска моего браузера с настройками прокси. Я использовал:

chromium-browser --proxy-server=localhost:3128

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

Я также смог настроить больше прокси-серверов, используя несколько экземпляров Squid для доступа к производственному, разработчикскому и локальному веб-сайту на одном компьютере. Инструкции по запуску нескольких экземпляров Squidздесь. Я также написалСообщение блогаобъяснив проблему и решение немного подробнее.

решение2

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

Одним из решений может быть использованиеПесочницадля настройки отдельной песочницы, каждая из которых содержит свой файл hosts. Браузер не обязательно должен быть установлен в песочнице, чтобы использовать файл hosts, достаточно запустить его изнутри этой песочницы. Для запуска браузера из песочницы можно создать ярлыки на рабочем столе.

Недостатком будет то, что браузеры будут изолированы от реальной файловой системы, например, при загрузке файлов из Интернета, но Sandboxie включает механизмы для копирования таких файлов за пределы песочницы.

К сожалению, функция запуска программ в более чем одной песочнице одновременно доступна только в платной версии Sandboxie (15 евро плюс налог за годовую лицензию для личного использования дома). Тестирование осуществимости можно провести с помощью бесплатной версии. (Редактировать: Sandboxie теперь является бесплатным ПО.)

Для пользователей Linux похожие продукты:

решение3

Вы можете автоматизировать процесс изменения хост-файла с помощью firefox + HostAdmin

HostAdmin — это дополнение Firefox, которое помогает вам изменять файл Hosts, переключать сопоставление домена и IP. HostAdmin может понимать ваш файл Hosts с помощью улучшенного синтаксиса файла Hosts. Кроме того, HostAdmin автоматически обновляет ваш кэш DNS всякий раз, когда вы изменяете свой файл Hosts, даже вручную.

Пример конфигурации

#==== Project 1
# 127.0.0.1 localhost1
127.0.0.1 localhost2
127.0.0.1 localhost3
#====
#==== Project 2
# 127.0.0.1 localhost1
# 127.0.0.1 localhost2
# 127.0.0.1 localhost3  

Дополнительная информация наhttps://addons.mozilla.org/en-US/firefox/addon/hostadmin/

Несколько экземпляров

Для запуска двух экземпляров браузера Firefox одновременно и независимо в Linux создайте несколько лаунчеров с помощью следующего скрипта. Также установите плагин во все Firefox.

Firefox 1

#!/bin/bash
th="/home/$USER/tmp/p1"
mkdir -p "$th"
export HOME="$th"
firefox -no-remote

Firefox 2

#!/bin/bash
th="/home/$USER/tmp/p2"
mkdir -p "$th"
export HOME="$th"
firefox -no-remote  

Вы можете использовать опцию профиля ( firefox -P) в браузере, чтобы использовать собственные профили для различных настроек, и можете использовать их одновременно.

решение4

Привоксиможет быть использовано для этой цели.

Связанный контент