Fichier .PAC

Fichier .PAC

Un fichier de Configuration Automatique de Proxy ou fichier.PAC (proxy auto-config) définit la façon selon laquelle un navigateur web (ou d’autres fonctionnalités équivalentes, regroupées sous le nom de User agents) se connectent à Internet : il leur permet d’utiliser automatiquement le proxy approprié à l’URL demandée.

Le navigateur va chercher ce fichier PAC en priorité. Les URLs qu’il contient peuvent être configurées manuellement, ou déterminées automatiquement par le WPAD (Web Proxy Autodiscovery Protocol[1]).

Un fichier PAC contient une fonction en JavaScript appelée "FindProxyForURL(url, host)". Cette fonction retourne une chaîne de caractères avec une ou plusieurs spécifications (règles) sur la façon d'y accéder. Ces règles amènent le navigateur web à utiliser un serveur proxy particulier ou à se connecter directement.

Si un proxy spécifié dans le fichier.PAC tombe, il peut paralyser la navigation. C'est la raison pour laquelle il faut toujours prévoir dans le fichier.PAC une seconde règle si la première ne peut être suivie.

Sommaire

Contexte

Les navigateurs modernes possèdent plusieurs niveaux de réglages automatiques : les utilisateurs peuvent choisir le niveau approprié à leurs besoins. Les fonctions suivantes sont couramment utilisées :

  • Manual proxy selection : spécifie un nom de domaine (hostname) et un numéro de port standard pour toutes les URLs. La plupart des navigateurs permettent de spécifier une liste de domaines qui pourront contourner le proxy.
  • Proxy auto-configuration (PAC): spécifie les URLs pour un fichier PAC avec une fonction en JavaScript qui détermine le proxy approprié pour chaque URL.

Cette fonction sert surtout aux utilisateurs d'ordinateurs portables, qui ont besoin de plusieurs configurations de proxy, et aux grandes sociétés ou complexes collectifs possédant plusieurs proxies différents.

  • Web Proxy Autodiscovery Protocol (WPAD) : Laisse le navigateur découvrir l'emplacement du fichier PAC grâce aux fonctions du DHCP et du DNS.

Le fichier PAC

Pour utiliser un fichier PAC, vous devez le publier sur un serveur Web et dire au navigateur de l'utiliser. Vous pouvez entrer manuellement les URLs à traiter dans les réglages de la connexion proxy de votre navigateur ou bien vous servir du protocole WPAD.

Un fichier PAC est un fichier texte en Javascript, qui contient entre autres la fonction FindProxyForURL(url, host). Cette fonction possède deux arguments associés :

  • URL : l'URL de l'objet
  • HOST : le nom de domaine dérivé de l'URL

Par convention, on nomme ce fichier proxy.pac. Microsoft (WPAD) utilise wpad.dat pour le standard WPAD.

Même si la majorité des clients traite le script sans tenir compte du type MIME retourné dans la requête HTTP, il convient de forcer le serveur web à le déclarer (application/x-ns-proxy-autoconfig ou application/x-javascript-config), ceci pour des raisons de clarté et de compatibilité.

S'il n'y a pas de raison de favoriser l'usage d'un type MIME par rapport à un autre, il est néanmoins raisonnable de supposer que application/x-ns-proxy-autoconfig sera acceptée par plus de clients que application/x-javascript-config ainsi qu'il est expliqué dans les spécifications originales de Netscape.

Exemples

  • Voici un exemple très simple de fichier PAC:
   function FindProxyForURL(url, host) { return "PROXY proxy.example.com:8080; DIRECT"; }

Cette fonction force le navigateur à récupérer toutes les pages au moyen du port 8080 du proxy (proxy.example.com). Si ce proxy tombait ou cessait de répondre, le navigateur contacterait le serveur WWW directement, sans utiliser un proxy.

  • Voici un exemple plus complexe pour montrer une fonction Javascript disponible dans la fonction FindProxyForURL:
   function FindProxyForURL(url, host) {
      // our local URLs from the domains below example.com don't need a proxy:
      if (shExpMatch(url,"*.example.com/*"))                  {return "DIRECT";}
      if (shExpMatch(url, "*.example.com:*/*"))               {return "DIRECT";}
 
      // URLs within this network are accessed through 
      // port 8080 on fastproxy.example.com:
      if (isInNet(host, "10.0.0.0",  "255.255.248.0"))    {
         return "PROXY fastproxy.example.com:8080";
      }
 
      // All other requests go through port 8080 of proxy.example.com.
      // should that fail to respond, go directly to the WWW:
      return "PROXY proxy.example.com:8080; DIRECT";
   }

Restrictions

Codage du fichier PAC

Les navigateurs comme Firefox ou IE ne supportent que le langage par défaut du fichier PAC. Ils ne supportent pas des langages Unicode comme UTF-8.

Résolution Dns

La fonction dnsResolve (et les autres fonctions similaires) exécutent un check DNS qui peut bloquer votre navigateur pendant un long moment si le serveur DNS ne répond pas.

Se servir des résultats de l'autoconfiguration de proxy selon le nom de domaine avec la version 5.5 d'IE (ou une version supérieure) limite la flexibilité du PAC standard. En effet, il peut vous faire choisir le meilleur proxy en se basant sur le nom de domaine demandé, sans prendre en compte le chemin de l'URL. Afin d'éviter ça, vous pouvez désactiver la recherche automatique de proxy dans la base de registre.

Il est recommandé de toujours utiliser l'adresse IP au lieu des noms de domaines dans la fonction, afin de veiller à la comptabilité avec les autres composants Windows qui utilisent la configuration les réglages PAC d'Internet Explorer, comme .NET 2.0 Framework.

Par exemple :

if (isInNet(host, dnsResolve(sampledomain) , "255.255.248.0") // .NET 2.0 will resolve proxy properly
 
if (isInNet(host, sampledomain, "255.255.248.0") // .NET 2.0 will not resolve proxy properly

La convention actuelle est de refuser de rediriger une connexion lorsqu'un fichier PAC est indisponible.

D'autres restrictions sont signalées dans la machine java sur le poste local.

Fonctionnalités avancées

D'autres fichiers PAC plus complexes peuvent réduire la charge des proxies, faire de la répartition de charge (load balancing), de la continuité de service, ou de la black listing (Liste noire) ou white listing (Liste blanche) avant que la requête tape les proxies. L'une d'elles peut retourner plusieurs proxies :

      return "PROXY proxy1.example.com:8080; PROXY proxy2.example.com:8080";

Lire aussi

Jonathan de Boyne Pollard, « Automatic proxy HTTP server configuration in web browsers », Frequently Given Answers, 2004 (en)

Liens externes

Notes

  1. Technologie Microsoft

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Fichier .PAC de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Pac (homonymie) —   Sigles d’une seule lettre   Sigles de deux lettres > Sigles de trois lettres   Sigles de quatre lettres   Sigles de cinq lettres   Sigles de six lettres   Sigles de sept… …   Wikipédia en Français

  • pac — ● ►en ext. ►EXT Proxy Autoconfiguration File. Fichier permettant la configuration automatique des paramètres concernant le proxy, et utilisé par les navigateurs, en particulier les descendants de Netscape. Il s agit souvent du fichier proxy.pac …   Dictionnaire d'informatique francophone

  • Itanium — Processeur Itanium Architecture Itanium L´Itanium est un …   Wikipédia en Français

  • Liste De Sigles — {{{image}}} Sigles d une seule lettre Sigles de deux lettres Sigles de trois lettres AAA à DZZ EAA à HZZ IAA à LZZ MAA à PZZ QAA à TZZ UAA à XZZ YAA à ZZZ …   Wikipédia en Français

  • Liste de sigles — Sigles d’une seule lettre Sigles de deux lettres Sigles de trois lettres Sigles de quatre lettres Sigles de cinq lettres Sigles de six lettres Sigles de sept lettres Sigles de huit lettres Voici une liste des sigles ou acronymes courants. La… …   Wikipédia en Français

  • Liste des sigles — Liste de sigles {{{image}}} Sigles d une seule lettre Sigles de deux lettres Sigles de trois lettres AAA à DZZ EAA à HZZ IAA à LZZ MAA à PZZ QAA à TZZ UAA à XZZ YAA à ZZZ …   Wikipédia en Français

  • Sigle de 7 caractères — Liste de sigles {{{image}}} Sigles d une seule lettre Sigles de deux lettres Sigles de trois lettres AAA à DZZ EAA à HZZ IAA à LZZ MAA à PZZ QAA à TZZ UAA à XZZ YAA à ZZZ …   Wikipédia en Français

  • Hart (moteur) — Pour les articles homonymes, voir Hart. Fichier audio …   Wikipédia en Français

  • Europass — Pour le ballon de football, voir Europass (ballon) Europass est une initiative de l Union européenne visant à aider les citoyens à présenter leurs compétences et qualifications de manière claire et logique (notamment auprès des employeurs), et à… …   Wikipédia en Français

  • Liste des références culturelles dans les épisodes des Simpson — Le logo de la série. Dans la série d animation américaine Les Simpson, les épisodes contiennent presque tous des références culturelles, principalement à des films, mais également à des œuvres picturales célèbres (peintures ou photographies), à… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”