【问题标题】:Redirect localhost through proxy?通过代理重定向本地主机?
【发布时间】:2010-10-31 19:19:38
【问题描述】:

我有一个在 localhost:1234 运行的 HTTP 代理。该代理适用于我发出的所有 Web 请求。

我有一个在 localhost:4567 运行的服务器。我希望对我的服务器的 HTTP 请求通过我的代理。应该很简单吧?有没有办法让 IE 或任何其他浏览器做到这一点?

【问题讨论】:

标签: iis proxy localhost


【解决方案1】:

浏览器绕过某些地址的代理。浏览器网络设置的“无代理”小节中对此进行了说明。 (火狐)

由于使用“localhost”而不是 ip,它解析为默认 ip 127.0.0.1,并且“localhost”和“127.0.0.1”都明确列为“无代理”。

但是“本地主机”是相当大的子集。可以使用 127.0.0.2:4567 或 127.0.1.1:4567,他们说有超过 1600 万个 IP 地址供您使用。 这将解决问题(至少对于 FF)。

附上设置和地址示例

【讨论】:

    【解决方案2】:

    在 Windows 上:

    转到 Windows/System32/Drivers/等

    在记事本中以管理员身份运行

    在你的主机文件中添加这样的内容:

    127.0.0.1 mysite.local
    

    然后,该代理将获取位于http://mysite.local 的该主机的所有数据。

    Ubuntu: /etc/hosts

    苹果: http://decoding.wordpress.com/2009/04/06/how-to-edit-the-hosts-file-in-mac-os-x-leopard/

    【讨论】:

    • windows HOSTS文件的实际格式为IP name
    【解决方案3】:

    是的,有办法!

    在 IE9 中,如果您在 Internet 选项中手动配置了代理,您可以单击高级并简单地将 <-loopback> 添加到代理绕过列表。在 IE6 中,当手动配置代理时,localhost URL 会通过代理。只有 IE7+ 版本不向代理服务器发送 localhost 请求。

    如果您想要一个更全球化的解决方案,您可以创建一个自动代理配置脚本。它基本上是一个包含函数 FindProxyForURL 的 javascript 文件。您可以使用该脚本的 URL 配置 Internet 选项。所有 HTTP 请求都会查询 FindProxyForURL 以获得它需要的代理服务器。因此,如果您希望所有 URL 都通过代理,您可以执行以下操作:

    function FindProxyForURL(url, host) {
        return "PROXY localhost:1234";
    }
    

    如果您只希望外部地址访问您的本地主机代理,那么您可以执行以下操作:

    function FindProxyForURL(url, host) {
        if (isPlainHostName(host)) { 
              return "DIRECT"; 
        }
        return "PROXY localhost:1234";
    }
    

    【讨论】:

      【解决方案4】:

      这取决于您的浏览器。在 Firefox 中,检查“无代理”是否为空。默认情况下,Firefox 会阻止 localhost 和 127.0.0.1 的 URL 代理。

      mozilla.org

      【讨论】:

        【解决方案5】:

        通常您可以为此配置浏览器设置。在 Firefox 中,它是选项 -> 高级 -> 网络 -> 连接(设置)。

        如果 IE 检测到 localhost URL,它会自动忽略代理。这一直是 Fiddler 等工具的眼中钉。

        但是,您通常可以通过直接访问 http://somesite.com:1234。有人花时间注册“somesite.com”域以自动路由到 127.0.0.1。这会使 IE 误以为它是一个外部域,但应该在重定向到本地服务器时通过您的代理运行。

        祝你好运。

        【讨论】:

        • somesite.com 上的注册似乎已失效。
        • 在@FlavorScape 的回答中使用 HOSTS 文件。
        猜你喜欢
        • 2013-06-27
        • 1970-01-01
        • 2012-03-29
        • 2012-11-13
        • 2017-10-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多