Comment configurer curl pour utiliser en permanence un proxy? [fermé]

103

Comment puis-je configurer "curl" pour utiliser en permanence un serveur proxy dans le terminal?

Ben
la source
25
pourquoi cette question a-t-elle été close? me semble assez important ...
Deepend
1
Je soupçonne que cela a été considéré comme hors sujet car il ne mentionnait pas explicitement comment cURL était utilisé dans un problème de programmation (par exemple, écrire un script pour faire quelque chose d'intéressant). Cela aurait pu aussi bien être formulé comme une question sysadmin mieux adaptée à ServerFault.
iX3

Réponses:

172

Vous pouvez créer un alias dans votre fichier ~ / .bashrc:

alias curl="curl -x <proxy_host>:<proxy_port>"

Une autre solution consiste à utiliser (peut-être la meilleure solution) le ~/.curlrcfichier (créez-le s'il n'existe pas):

proxy = <proxy_host>:<proxy_port>
Sandro Munda
la source
22
La configuration du proxy dans ~ / .curlrc m'a fait gagner de nombreuses heures douloureuses lorsque je travaille depuis un proxy d'entreprise. Merci!
Lachlan McD.
qu'en est-il de l'utilisateur: passer auth à cela?
Brian Vanderbusch
5
Vous pouvez essayer le format nom d'utilisateur: mot de passe @ proxy: port.
Lachlan McD.
3
Si quelqu'un vient et essaie d'accomplir cela avec Windows / DOSKEY, j'ai utiliséalias curl=curl --proxy <proxy server:port> $*
Brandon Linton
46

De nombreux programmes UNIX respectent la http_proxyvariable d'environnement, curl inclus. Le format accepté par curl est [protocol://]<host>[:port].

Dans votre configuration shell:

export http_proxy http://proxy.server.com:3128

Pour le proxy des requêtes HTTP S , définissez https_proxyégalement.

Curl vous permet également de définir cela dans votre .curlrcfichier ( _curlrcsous Windows), que vous pourriez considérer comme plus permanent:

http_proxy=http://proxy.server.com:3128
Peter T
la source
11
La variable env ne fonctionnait pas pour moi (dans Terminal sur un mac).
Kendall Helmstetter Gelner
3
Pour proxy le trafic HTTPS sur mac, définir la variable http s _proxy env dans le terminal avant d'appeler curl, a fonctionné pour moi. Par exemple,export https_proxy=https://proxy.server.com:6443
Raghu Dodda
1
Notez également que la configuration de HTTP_PROXY / HTTPS_PROXY (majuscule) ne fonctionne pas, mais la configuration de http_proxy / https_proxy (minuscule) fonctionne.
Martijn
14

Curl recherchera un fichier .curlrc dans votre dossier personnel au démarrage. Vous pouvez créer (ou modifier) ​​ce fichier et ajouter cette ligne:

proxy = yourproxy.com:8080
Trevor
la source
Cela fonctionne sur Ubuntu 16.04. Il devrait être une réponse acceptée pour ce système d'exploitation.
Frank.Germain
13

Un avis. Sous Windows, placez votre _curlrc dans '% APPDATA%' ou '% USERPROFILE% \ Application Data'.

discours
la source
Malheureusement, cela n'a pas fonctionné pour moi.
David Refoua