web-dev-qa-db-ja.com

Firefoxでタブごとにプロキシを無効/有効にする

Firefoxでタブごとにプロキシ接続を無効/有効にすることはできますか?

プロキシーを有効にしてインターネットにアクセスでき、プロキシーを無効にして内部サーバーにアクセスできますが、どちらの構成も他を許可しません。

Firefox 4のタブごとのプロファイルはこれを許可するかもしれないと感じていますが、おそらく拡張機能を使用することによって、Firefox 3.6.13でこれを実現する方法があるかどうか疑問に思っていました。

とりあえず quickProxy (quickProxyを見つけようとしているときに発見した QuickProxy ではない)を使用して、プロキシのオンとオフを切り替えることができます。ブラウザ全体ですが、よりきめの細かいものが望まれます。

25
Rich

FoxyProxy への別の投票ですが、設定が複雑な場合は [〜#〜] pac [〜#〜] 機能を使用することをお勧めします。 2つのプロキシサーバーから選択できますが、どれを選択するかは非常に難しい場合があります。 PACを使用するようにFoxyProxyを設定するには、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;
}

上記の例は、通常、すべてのHTTP接続に対してmyproxy.company.comでDNSルックアップを実行するため、かなり非効率的です。ブート時に外部プログラムを介してAT_HOMEAT_WORKを.pacファイルにハードコードします。ただし、必要に応じて、PACスクリプトを作成するのがいかに複雑かの一例です。

4
Joe Casadonte

私は最近あなたのために働くかもしれないこのFireFox拡張を発見しました:

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

これにより、コンテナーごとにプロキシーを構成できるようになり、必要に応じて1つ以上のタブをコンテナーに確実に接続できます。

1
Louis Mamakos

タブごとにプロキシが必要なのはなぜですか?あなたの開発環境はgoogle.comをLANボックスなどに再ルーティングしますか?

プロキシを外部サイト( http://superuser.com )に自動的に使用し、内部サイト( http://uri.to/internal/server )?もしそうなら、PAC機能に関するJoeの投稿を調べてみます。

ネットワーク構成画面の[プロキシなし:]ボックス(FF4では少なくともFF3はここにインストールされていません)は、PACファイルを作成せずに同じことをいくつか行う方法です。 http://www.local.orghttp:// www2のプロキシを無視することができます.local.org.local.org, 127.0.0.1のようなものを使用した127.0.0.1

0
KJP