Ajouter un proxy à un hôte particulier uniquement sur mac


10

Je souhaite appliquer les paramètres de proxy uniquement à un hôte particulier (par exemple, www.apple.com) sous Mac OS X. Comment puis-je procéder?

Dans les Préférences Système, il n'y a que des options pour contourner les paramètres de proxy pour des hôtes particuliers.

Réponses:


17

Vous pouvez utiliser le proxy.pacfichier suivant pour envoyer tout le trafic vers apple.com via le proxy 1.2.3.4 tout en allant directement à tous les autres hôtes:

function FindProxyForURL(url, host) {
    PROXY = "PROXY 1.2.3.4"

    // Apple.com via proxy
    if (shExpMatch(host,"*.apple.com")) {
        return PROXY;
    }
    // Everything else directly!
    return "DIRECT";
}
  1. Enregistrez ce script sous proxy.pac(ou tout autre nom que vous aimez) sur un serveur Web. Il peut s'agir d'un serveur Web local ( http: //localhost/proxy.pac ). Ceci est requis à partir d'OSX Lion .
  2. Allez au System Preferences.
  3. Sélectionnez Network.
  4. Sélectionnez le réseau que vous souhaitez modifier (par exemple "WiFi").
  5. Cliquez sur le Advanced...bouton.
  6. Cliquez sur l' Proxiesonglet
  7. Vérifiez [x] Automatic Proxy-Configuration.
  8. Dans le URL:champ, tapez l'URL du fichier que vous avez créé à l' étape 1., par exemple: http://localhost/proxy.pac. (Remarque: les chemins locaux ne fonctionneront pas dans OSX moderne)
  9. Cliquez SaveetApply

Voila! Votre propre configuration de proxy

Pour plus d'informations sur le format du proxy.pacfichier, consultez http://en.wikipedia.org/wiki/Proxy_Auto-Config comme point de départ.


8

En fait, vous pouvez utiliser le file:///path/to/fileschéma de l'URL, au lieu de devoir compter sur un serveur Web.

Par exemple:

file:///Users/youruser/var/proxy/proxy.pac

1
Fait intéressant, tout cela fonctionne également pour Linux / BSD, et peut-être même Windows; partout où la configuration automatique du proxy est utilisée, cela est susceptible de fonctionner.
— jnbek

Cela devrait probablement être la réponse acceptée car elle évite de trop compliquer la pile utilisée et comme le mentionne le commentaire précédent - est une solution beaucoup plus universelle.
— user239546

Si vous utilisez file: ///...pac, dans certaines applications, vous pouvez rencontrer des problèmes (par exemple, des applications Microsoft comme Teams et autres, voir support.microsoft.com/en-us/help/4042151/… ), de sorte que le le meilleur moyen est de le mettre sur localhost ou sur n'importe quel serveur public sur Internet.
— paly

1
Cela ne fonctionne PAS sur OSX.
— jpgeek

@jpgeek fonctionne sur 10.15 pour moi. Si vous n'êtes pas sûr, revenez 'PROXY ...'sans vérifier le domaine à vérifier. proxy.pacest relu lorsque vous basculez le wifi.
— seeker_of_bacon

2

Ajout à la réponse de @ heiglandreas ...

La solution de @ jnbek ne fonctionnait pas sur Mac OSX pour moi et je cherchais une solution simple.

J'ai donc créé un nouveau dossier et copié le fichier pac dans celui-ci. Ensuite, j'ai démarré un simple serveur Web sur OSX sur le port 80 à partir de ce dossier lui-même.

Accédez simplement au dossier et exécutez cette commande. Veuillez changer le port de 80 à autre chose s'il est déjà occupé.

python -m SimpleHTTPServer 80

Maintenant, je pouvais facilement obtenir le fichier proxy.pac à partir de http://localhost/proxy.pac. Ou, pour une utilisation différente du port: http://localhost:PORT/proxy.pac.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.