Back to proxy-pac service main section
When we talk about Internet Explorer, it is sure that this also corresponds to browsers that use the Microsoft proxy search API such as Chrome, Opera, Edge, IE...
Failover proxies can be set in the PAC file.
While not as smooth as using load balancers, it can be useful in certain cases
Adding 2 or more proxies in proxy servers section make proxies in fail-over method.
If the browser cannot reach the first one, it will use the next one.
By default, the javascript function in the auto-configuration script named "FindProxyForURL()" is invoked whenever an object is about to be retrieved by the Web browser.
In practice, however, Microsoft's Internet Explorer has what Microsoft calls an "automatic proxy results cache".
Whenever an HTTP proxy server (located using the results of a FindProxyForURL() or other function call) is successfully contacted to retrieve an object, the APR cache is updated to contain that pair.
If, when calling the FindProxyForURL() function, Internet Explorer finds the host already listed in the APR cache, it uses the Proxy server listed in the APR cache entry instead of calling the FindProxyForURL() function again for the same host.
The intent of the APR cache is to try to reduce the number of times the JavaScript function needs to be executed, and thus reduce the overhead of retrieving objects.
Since Internet Explorer's APR cache is indexed by hostname, this means that it is impossible for a PAC script to reliably produce several different results based on any part of a URL besides the hostname.
It is impossible, for example, to provide different proxy configurations based on the path portion of URLs on a single host.
Since Internet Explorer's APR cache caches the HTTP proxy server rather than the full results of the FindProxyForURL() function, this means that fallback from one Proxy to another does not occur in the event of a problem, even if the FindProxyForURL() function returns a list of multiple HTTP proxy servers.
Microsoft Knowledge Base article #271361 summarizes these problems and describes how to disable Internet Explorer's APR cache.
Microsoft's Internet Explorer also caches information about "bad" HTTP proxy servers for 30 minutes.
This has no direct impact on PAC scripts, except that there is often confusion when people configure a Proxy server and create a PAC script at the same time, and a problem with the Proxy server that causes it to be cached as "bad" for 30 minutes is misdiagnosed as a problem with the PAC script.