Hoje configurei o PC da minha empresa para configurar um proxy e funcionou porque consigo wget
paginar a web via proxy.
O que eu fiz é definir http_proxy
, https_proxy
e ftp_proxy
no ~/.bashrc
e no ~/.wgetrc
.
No entanto, quando tentei curl www.google.fr
, ele bloqueou e expirou.
curl --proxy $http_proxy www.google.fr
funcionou como esperado.
É possível fazer curl
uso do proxy automaticamente?
Talvez a maneira mais fácil de fazer o curl usar um proxy seja adicionar os detalhes ao
~/.curlrc
arquivo. A sintaxe é a seguinte:Alternativamente , isso pode ser definido como uma variável ambiental, mas o uso de IMHO
~/.curlrc
é o método mais direto e menos propenso a erros.Alguns proxies exigem que cabeçalhos de autenticação específicos sejam definidos, portanto, esteja ciente deles também. No meu caso, está
--proxy-ntlm
no exemplo abaixo:curl -x webproxy.net:8080 -U nome de usuário:senha http://google.com --proxy-ntlm
Mas existem outras opções:
--proxy-digest
e--proxy-negotiate
Por fim, o cURL tem uma página de documentação super amigável , portanto, verifique-a.
O cliente
curl
(naturalmente) usa a bibliotecalibcurl
sob o capô.No contexto de proxies, a documentação da libcurl api, entre outras coisas, afirma:
Portanto, se você definir a variável de ambiente de acordo
libcurl
e, conseqüentementecurl
, irá buscá-la. Qualquer proxy definido explicitamente (por exemplo, em.curlrc
ou por meio--proxy
do argumento cmdline) sobrescreve as configurações da variável de ambiente.