卷曲:绕过localhost的代理

Tom*_*duy 27 bash proxy curl

我在代理下,如果我尝试curl http://localhost/mysitecurl http://127.0.0.1/mysite卷曲尝试用代理解决它.所以我尝试了--noproxy选项,但不起作用.使用代理的外部服务器正常工作curl http://mysite.com.

我的配置:

  • Windows 8下的Cygwin(bash),带有curl扩展名.
  • 代理:proxy.domain.xx:1080无需身份验证
  • http_proxy=http://proxy.domain.xx:1080
  • 本地服务器:XAMP版本1.8.0
  • Apache端口:80,443
  • 浏览器:Chrome代理,但配置为访问localhost*.dev

从卷曲 - 帮助

--noproxy:不使用代理的以逗号分隔的主机列表

我尝试了什么:

  • 我已经停用了防火墙而没有
  • $ curl -v http://localhost/mysite - >调试:

    响应

    Connected to proxy.domain.xx (200.55.xxx.xx) port 1080 (#0)
    GET http://localhost/mysite HTTP/1.1
    User-Agent: curl/7.21.1 (i686-pc-mingw32) libcurl/7.21.1 OpenSSL/0.9.8r zlib/1.2.3
    Host: localhost
    Accept: */*
    Proxy-Connection: Keep-Alive
    The system returned: <PRE><I>(111) Connection refused</I></PRE>
    
    Run Code Online (Sandbox Code Playgroud)
  • curl -v --noproxy localhost, http://localhost/muestra

    响应

    About to connect() to localhost port 80 (#0)
    * Trying 127.0.0.1... 
    * Connected to localhost (127.0.0.1) port 80 (#0)
    > GET /mysite HTTP/1.1
    > User-Agent: curl/7.21.1 (i686-pc-mingw32) libcurl/7.21.1 OpenSSL/0.9.8r zlib/1.2.3
    > Host: localhost
    > Accept: */*
    >
    < HTTP/1.1 301 Moved Permanently
    < Server: Apache/2.4.2 (Win32) OpenSSL/1.0.1c PHP/5.4.4
    < Location: http://localhost/mysite
    < Content-Length: 331
    < Content-Type: text/html; charset=iso-8859-1
    
    Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

Udo*_*ein 43

curl -v --noproxy localhost, http://localhost/muestra
Run Code Online (Sandbox Code Playgroud)

卷发回应

About to connect() to localhost port 80 (#0)
* Trying 127.0.0.1... 
* Connected to localhost (127.0.0.1) port 80 (#0)
Run Code Online (Sandbox Code Playgroud)

所以它清楚地表明它连接到localhost.

  • 三年后,非常有帮助! (5认同)

Has*_*tha 9

尝试下面,绕过本地ips的代理服务

export no_proxy=localhost,127.0.0.1
Run Code Online (Sandbox Code Playgroud)


小智 7

使用

curl -v --noproxy'*' http: //abc.com

完全禁用代理.

或者如果您只想为abc.com目的地禁用代理

curl -v --noproxy"abc.com" http://abc.com

其中abc.com是你想去的网址


bor*_*afu 5

正如其他一些人所说,这些--noproxy选项就是您正在寻找的。 https://curl.haxx.se/docs/manpage.html#--noproxy

显然,您尝试的第二个请求正在接收 HTTP 301 响应,因此您可能还想使用该-L选项来跟踪重定向: https: //curl.haxx.se/docs/manpage.html#-L

您可以使用curl别名来始终忽略本地主机请求的代理。

alias curl='curl --noproxy localhost,127.0.0.1'

为了方便起见,将其添加到您的 .bashrc 文件中:

echo "alias curl='curl --noproxy localhost,127.0.0.1'" >> ~/.bashrc


eme*_*ove 5

在 Windows 中,以下选项适用于我连接到 localhost。

curl --proxy "" --location http://127.0.0.1:8983