20

Можно ли отключить / включить прокси-соединение в виде вкладок в Firefox?

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

У меня есть ощущение, что Firefox 4 для профилей вкладок может позволить это, но мне было интересно, есть ли способ достичь этого в Firefox 3.6.13, возможно, с помощью расширения.

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

7 ответов7

5

Еще один голос за FoxyProxy, но я предложу использовать функцию PAC, если ваши настройки сложны. У меня есть два прокси-сервера на выбор, но какой из них выбрать, иногда бывает очень сложно. Чтобы настроить FoxyProxy для использования PAC, перейдите на вкладку Proxy Details и выберите Automatic Proxy Configuration URL сервера и введите что-то вроде file:///home/me/.myproxy.pac . Вот пример файла PAC:

function FindProxyForURL(url, host)
{
   var DIRECT = "DIRECT";
   var PROXY = "PROXY myproxy.company.com:80";
   var LOCAL = "PROXY localhost:8118";

   var rc = "";

// alert("My IP Address is: " + myIpAddress());

   // special: DIRECT / localhost
   if (dnsResolve(host) == "127.0.0.1") {
      rc = DIRECT;
   }

   // special: DIRECT / plain name (no domain name (i.e. no dots)) (e.g. http://foobar)
   // (must be local to where I'm at)
   else if (isPlainHostName(host)) {
      rc = DIRECT;
   }

   else {
      // special: LOCAL / not at home & restricted hosts
      if ((dnsDomainIs(host, "frank.home.com")) ||
          (dnsDomainIs(host, "firewall.home.com")) ||
          (dnsDomainIs(host, "backupserver.home.com"))) {
         // determine if we're at home or not; home can resolve the laser printer
         var AT_HOME = (isResolvable("myprinter.home.com") ? true : false);

         if (! AT_HOME) {
            rc = LOCAL;
         }
         else {
            rc = DIRECT;
         }
      }

      // general: DIRECT / not at work
      else {
         // determine if we're at work or not; work can resolve proxy server
         var AT_WORK = (isResolvable("myproxy.company.com") ? true : false);
         if (! AT_WORK) {
            rc = DIRECT;
         }

         // ASSUMED: AT_WORK

         // special: LOCAL / at work & broken work links
         // (must use local proxy server to connect)
         else if ((host == "download.company.com") ||
                  (host == "search.company.com") ||
                  (host == "www.company.com")) {
            rc = LOCAL;
         }

         // general: DIRECT / at work & work intranet links
         else if ((dnsDomainIs(host, ".company.com")) ||
                  (dnsDomainIs(host, ".companylocal.com")) ||
                  (dnsDomainIs(host, ".legacycompany.com"))) {
            rc = DIRECT;
         }

         // general: DIRECT / at work & 192.168.*
         else if (isInNet(host, "192.168.0.0", "255.255.0.0")) {
            rc = DIRECT;
         }

         // default: go through LOCAL
         else {
            rc = LOCAL;
         }
      }
   }

//   alert("Proxy for {" + host + "} is: " + rc);
   return rc;
}

Обратите внимание, что приведенный выше пример довольно неэффективен, так как обычно он приводит к поиску DNS на myproxy.company.com для каждого соединения HTTP; Я жестко AT_HOME и AT_WORK в файле .pac через внешнюю программу во время загрузки. Но это пример того, как сложно вы можете создать свой PAC-скрипт, если вам нужно.

3

Вы можете использовать разные прокси в общих и личных вкладках, используя комбинацию дополнений Private Tab и Proxy Privacy Ruler .

1

Autoproxy также может сделать эту работу.

0

Зачем вам нужен прокси для каждой вкладки? Ваша среда разработки перенаправляет google.com в окно локальной сети или что-то в этом роде?

Будет ли достаточно автоматически использовать прокси для внешних сайтов (http://superuser.com), а не для внутренних сайтов (http://uri.to/internal/server)? Если так, то я бы сказал, загляните в пост Джо о функции PAC.

Поле «Нет прокси для:» на экране конфигурации сети (по крайней мере, так оно называется в FF4, здесь у меня не установлен FF3) - это способ сделать некоторые из тех же вещей без создания файла PAC. Вы можете игнорировать ваш прокси для http://www.local.org, http://www2.local.org и 127.0.0.1, используя что-то вроде .local.org, 127.0.0.1

0

для тех, кто ищет способ ... попробуйте SwitchyOmega расширение для Firefox

https://addons.mozilla.org/en-US/firefox/addon/switchyomega/

-1

Посмотрите на FoxyProxy. Он имеет несколько вариантов конфигурации. Не совсем уверен, что позволяет настраивать для каждой вкладки, но определенно может настроить различные параметры прокси для разных адресов. Таким образом, вы можете настроить один прокси-сервер для внутренних серверов (возможно, сетевую маску, например 192.168.0.0/24), а другой - для Интернета.

-1

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

Например, у вас есть Proxy1 и Proxy2, вы хотите, чтобы все URL-адреса Microsoft проходили через Proxy1, а все остальные использовали Proxy2.

Вот что вам нужно сделать:

Отредактируйте прокси по умолчанию и укажите Proxy2 IP и порт. Не добавляйте шаблон URL. Создайте прокси-сервер как Proxy1 и укажите IP-адрес и порт Proxy1. В шаблоне URL добавьте «* .microsoft.com *» (без кавычек) в виде белого списка. Затем установите FoxyProxy на «Использовать прокси на основе их предопределенных шаблонов и приоритетов»

Надеюсь это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .