Desativar / ativar o proxy em uma guia por guia no Firefox

23

É possível desabilitar / habilitar a conexão proxy, tab a tab, no Firefox?

Posso acessar a Internet com o proxy ativado e nossos servidores internos com o proxy desativado, mas nenhuma configuração permite a outra.

Sinto que os perfis por guia do Firefox 4 podem permitir isso, mas fiquei imaginando se havia uma maneira de conseguir isso no Firefox 3.6.13, talvez através do uso de uma extensão.

No momento, estou me contentando com o quickProxy (não o QuickProxy, que acabei de descobrir ao tentar encontrar o quickProxy), que permite ativar e desativar o proxy para todo o navegador, mas preferiria algo mais refinado.

Rico
fonte
6
As respostas até agora parecem um pouco esfarrapadas. Para meu conhecimento limitado, o foxyproxy (que todo mundo sugere) não opera em uma base por guia. Das três respostas até agora, eu não vi nenhum estado, se elas respondem à pergunta por guia, suspeito que não. Talvez uma rota para uma solução seja se você puder executar perfis diferentes em guias diferentes e cada perfil estiver configurado para um proxy diferente. foxyproxy pode ser ok como uma alternativa se você não conseguir exatamente o que deseja, mas não é o que sua pergunta pede (a menos que faça abas diferentes e provavelmente não).
26211 barlop
Não é uma solução guia por guia, mas o complemento do Firefox "MM3-ProxySwitch" fornece um ícone para alternar entre direto / proxy com um único clique. O ícone fica cinza quando o proxy está desativado para informar visualmente o estado atual. O arquivo de configuração é tipo de críptica mas algo tão curto como este faz a alternância acima "[direto] [Privoxy http = myrouterip: 8118 ssl = myrouterip: 8118 noproxy = localhost, 127.0.0.1]"
yoyoma2

Respostas:

4

Outro voto no FoxyProxy, mas sugerirei o uso do recurso PAC se sua configuração for complexa. Eu tenho dois servidores proxy para escolher, mas o que escolher fica muito complicado às vezes. Para configurar o FoxyProxy para usar o PAC, vá para a Proxy Detailsguia, selecione Automatic Proxy Configuration URLe digite algo parecido file:///home/me/.myproxy.pac. Aqui está um exemplo de um arquivo 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;
}

Observe que o exemplo acima é bastante ineficiente, pois geralmente termina com uma pesquisa de DNS em myproxy.company.com para cada conexão HTTP; Eu codigo AT_HOMEe AT_WORKno arquivo .pac através de um programa externo no momento da inicialização. Mas é um exemplo de quão complicado você pode criar seu script PAC, se necessário.

Joe Casadonte
fonte
-1

Por que você precisa do proxy por guia? Seu ambiente de desenvolvimento redireciona o google.com para uma caixa de LAN ou algo assim?

Seria bom o suficiente usar automaticamente o proxy para sites externos ( http://superuser.com ), e não para sites internos ( http://uri.to/internal/server )? Se assim for, então eu diria olhar para o post de Joe sobre o recurso PAC.

A caixa "Sem proxy para:" na tela de configuração de rede (pelo menos é assim que é chamada no FF4, não tenho o FF3 instalado aqui) é uma maneira de fazer as mesmas coisas sem criar um arquivo PAC. Você pode ignorar seu proxy para http://www.local.org , http://www2.local.org e 127.0.0.1 usando algo como.local.org, 127.0.0.1

KJP
fonte
Aqui está um cenário. Se o DNS do seu domínio estiver configurado usando regras geográficas definidas, você precisará de um proxy com base em cada guia para testar cada região e verificar se os resultados DNS apropriados estão sendo retornados.
James Wong - Restabelece Monica
Asker afirmou que precisava usar proxy para acessar sites externos e nenhum proxy para acessar sites internos. O proxy por guia não é necessário para isso. A configuração "Sem proxy para:" é exatamente para esse fim. (Como exemplo, eu coloquei localhost, 10.0/8para usar nenhum proxy para acessar localhoste 10.*.*.*)
aff
-3

Dê uma olhada no FoxyProxy . Possui várias opções de configuração. Não tenho certeza se permite a configuração por guia, mas definitivamente pode definir diferentes configurações de proxy para diferentes endereços. Dessa forma, você pode configurar um proxy para servidores internos (provavelmente uma máscara de rede como 192.168.0.0/24) e outra para a Internet.

GrzegorzOledzki
fonte
-3

Uso FoxyProxy há um mês como complemento do Firefox e estou muito satisfeito com suas opções. Com esse complemento, você pode configurar vários proxies; adicione os URLs como lista branca para o proxy que você deseja que ele use. Use curingas quando houver mais URLs correspondentes.

Por exemplo, você possui Proxy1 e Proxy2, deseja que todos os URLs da Microsoft passem pelo Proxy1 e todos os outros usem o Proxy2.

Aqui está o que você precisa fazer:

Edite o Proxy padrão e forneça o IP e a porta do Proxy2. Não adicione nenhum padrão de URL Crie um proxy como Proxy1 e forneça o IP e a porta do Proxy1. No padrão de URL, adicione "* .microsoft.com *" (sem aspas) como lista branca. Em seguida, defina FoxyProxy como "Usar proxies com base em seus padrões e prioridades predefinidos"

Espero que isto ajude.

TheMaskOfZero
fonte