在 Firefox 中逐个选项卡禁用/启用代理

在 Firefox 中逐个选项卡禁用/启用代理

是否可以在 Firefox 中逐个选项卡地禁用/启用代理连接?

我可以通过启用代理来访问互联网,也可以通过禁用代理来访问我们的内部服务器,但是两种配置都不允许另一种配置。

我觉得 Firefox 4 的每个选项卡配置文件可能允许这样做,但想知道是否有办法在 Firefox 3.6.13 上实现这一点,也许通过使用扩展。

目前我只能用快速代理(不是快速代理这是我在尝试寻找 quickProxy 时发现的,它允许我为整个浏览器打开或关闭代理,但我更喜欢更细粒度的功能。

答案1

我最近发现这个 FireFox 扩展可能适合您:

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

这似乎允许您为每个容器配置一个代理,并且您可以根据需要将一个或多个选项卡附加到容器。

答案2

又一票福克斯代理但我建议使用聚合氯化铝如果您的设置很复杂,则可以使用此功能。我有两个代理服务器可供选择,但有时选择哪一个非常棘手。为了设置 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;
}

请注意,上述示例效率相当低,因为它通常会对 myproxy.company.com 上的每个 HTTP 连接进行 DNS 查找;我在启动时通过外部程序将其硬编码AT_HOMEAT_WORK.pac 文件中。但这是一个示例,说明如果需要,您可以使 PAC 脚本变得多么复杂。

答案3

如果你使用模式代理,你可以创建一个 IP 地址列表,它将自动切换到代理

答案4

看一眼福克斯代理。它有多个配置选项。不太确定它是否允许配置每个选项卡,但肯定可以为不同的地址配置不同的代理设置。这样,您可以为内部服务器设置一个代理(可能是某些网络掩码,如 192.168.0.0/24),为 Internet 设置另一个代理。

相关内容