Sur des systèmes plus anciens tels que Windows 7 + IE10, appeler "alerte ()" dans le fichier PAC entraînerait une boîte de dialogue. Cependant, avec Windows 8.1, aucun dialogue ne s'affiche même si IE11 semble utiliser le PAC.
Ma situation actuelle est que IE11 peut utiliser les proxies (chaussettes) (renvoyées par le PAC), mais les applications d'interface utilisateur moderne sont complètement déconnectées d'Internet. Il semble que IE11 et l'interface utilisateur moderne traitent le cadre du Pac différemment, mais je ne trouve pas un moyen de le déboguer.
En résumé, mes questions sont
IE11 Changements de fichier PAC
Les modifications apportées par Microsoft sur la manière dont IE11 gère les fichiers PAC locaux. Vous pouvez en lire à leur sujet ici ou voir ci-dessous pour quelques informations rapides.
Notez également que les instructions alert()
ne fonctionnent plus à partir de Windows 8.
Avec IE11, l'utilisation d'un fichier PAC via le protocole de fichier n'est plus possible, à moins que vous ajoutez la clé de registre suivante:
[HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings]
(DWORD)"EnableLegacyAutoProxyFeatures"=1
Remarque: Les déclarations d'alerte n'apparaîtront plus lorsque vous utilisez Windows 8 ou plus!
Débogou fichier PAC avec autoprox ( lien de téléchargement )
Parfois, vous devez simplement tester votre fichier PAC, si l'itinéraire attendu est renvoyé, bien que vous n'ayez pas accès au site Web en question. Pour de tels tests, vous pouvez utiliser l'outil de commande de ligne-utilitaire (ci-joint) Autoprox.exe, créé par Pierre-Louis Coll.
Lorsque vous le commencez dans un
CMD
sans paramètre supplémentaire, l'utilisation est affichée:
C:\temp>autoprox
Version : 2.1.0.0
Written by [email protected]
Usage : AUTOPROX -s (calling DetectAutoProxyUrl and saving wpad.dat file in temporary file)
Usage : AUTOPROX [-h] url [Path to autoproxy file]
-h: calls InternetInitializeAutoProxyDll with helper functions implemented in AUTOPROX
AUTOPROX url: calling DetectAutoProxyUrl and using WPAD.DAT logic to find the proxy for the url
AUTOPROX url path: using the autoproxy file from the path to find proxy for the url
Example: autoprox -s
Example: autoprox http://www.Microsoft.com
Example: autoprox -h http://www.Microsoft.com c:\inetpub\wwwroot\wpad.dat
Example: autoprox http://www.Microsoft.com http://proxy/wpad.dat
Voici la sortie avec notre échantillon:
C:\temp>autoprox http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
Calling InternetGetProxyInfo with url http://us.msn.com and Host us.msn.com
Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;
Lorsque vous souhaitez voir les fonctions liées à DNS ont été appelées, vous pouvez utiliser le paramètre "-h" en plus: ici la sortie, lorsque ceci est utilisé:
C:\temp>autoprox -h http://us.msn.com c:\temp\sample.pac
The Winsock 2.2 dll was found okay
Will call InternetInitializeAutoProxyDll with helper functions
url: http://us.msn.com
autoproxy file path is : c:\temp\sample.pac
Calling InternetInitializeAutoProxyDll with c:\temp\sample.pac
Calling InternetGetProxyInfo with url http://us.msn.com and Host us.msn.com
ResolveHostByName called with lpszHostName: us.msn.com
ResolveHostByName returning lpszIPAddress: 65.55.206.229
Proxy returned for url http://us.msn.com is:
PROXY myproxy:80;
Traitement d'erreur dans Autoprox.exe:
Lorsque vous spécifiez un fichier PAC non existant (E.G. TYPO dans la ligne de commande), le résultat d'Autoprox.exe sera:
ERROR: InternetInitializeAutoProxyDll failed with error number 0x6 6.
Lorsque le fichier PAC contient des erreurs de syntaxe, vous recevez généralement le message suivant affiché:
ERROR: InternetGetProxyInfo failed with error number 0x3eb 1003.
Après avoir terminé le test local, le fichier PAC doit être copié sur le serveur Web où il sera accessible via HTTP-Protocol.