Je suis sous un proxy et si j'essaie curl http://localhost/mysite
ou curl http://127.0.0.1/mysite
curl essayez de le résoudre avec le proxy. J'ai donc essayé avec l'option --noproxy
, mais cela ne fonctionne pas. Fonctionne correctement pour les serveurs externes avec le proxy en tant que curl http://mysite.com
.
proxy.domain.xx:1080
sans authentificationhttp_proxy=http://proxy.domain.xx:1080
localhost
et *.dev
--noproxy: liste d'hôtes séparés par des virgules n'utilisant pas de proxy
$ curl -v http://localhost/mysite
-> Debug:
Réponse
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>
curl -v --noproxy localhost, http://localhost/muestra
Réponse
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
Une idée comment résoudre ce problème?
Après
curl -v --noproxy localhost, http://localhost/muestra
curl a répondu avec
About to connect() to localhost port 80 (#0)
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 80 (#0)
Donc, il a clairement indiqué qu'il était connecté à localhost.
utilisation
curl -v --noproxy '*' http://abc.com
désactiver complètement le proxy.
ou si vous souhaitez désactiver le proxy uniquement pour la destination abc.com
curl -v --noproxy "abc.com" http://abc.com
où abc.com est l'URL que vous voulez aller
Comme d'autres l'ont dit, les options --noproxy
correspondent à ce que vous recherchez . https://curl.haxx.se/docs/manpage.html#--noproxy
Apparemment, la deuxième demande que vous avez essayée recevait une réponse HTTP 301, vous voudrez donc probablement aussi utiliser l'option -L
pour suivre les redirections: https://curl.haxx.se/docs/manpage.html#- L
Vous pouvez utiliser alias curl pour toujours ignorer les mandataires pour les demandes localhost.
alias curl='curl --noproxy localhost,127.0.0.1'
Ajoutez-le à votre fichier .bashrc pour plus de commodité:
echo "alias curl='curl --noproxy localhost,127.0.0.1'" >> ~/.bashrc
Sous Windows, l'option suivante fonctionnait pour moi pour la connexion à localhost.
curl --proxy "" --location http://127.0.0.1:8983
Curl s'attend à ce que le port soit spécifié avec proxy cette solution a fonctionné pour moi
export http_proxy = "http: // myproxy: 80"