local .pac-file URL format that works with IE and Safari (Windows)?

14

1

Say I want to use a proxy auto-config file that is stored at C:\proxy.pac. To make Internet Explorer use this configuration I have to specify the pac-file in the LAN settings in the following way:

file://C:/proxy.pac

But Safari, that uses the same proxy settings, will ignore it in this case. To make Safari use the pac-file I have to reference it as

file:///C:/proxy.pac

(3 slashes at the beginning) which, according to Wikipedia is the correct format. But this way Internet Explorer will ignore it. Opera and Chrome, that also use the same proxy settings, are fine with both ways but is there another option that will work with Safari and Internet Explorer at the same time?

legr3c

Posted 2010-09-21T09:12:45.550

Reputation: 481

Answers

8

For IE and the windows platform, the correct location for a local pac file seems to be:

file://C:/Windows/system32/drivers/etc/proxy

next to your hosts file.

j040p3d20

Posted 2010-09-21T09:12:45.550

Reputation: 191

4please note there is no extension – j040p3d20 – 2011-02-13T12:48:04.817

5

This feature is no longer supported in W8.1 since the file:// schema was never supported by WinHTTP. So tools that use WinHTTP for proxy settings will not recognize it.

Also note:

In November 2012, the .NET Framework was changed to use WinHTTP for PAC processing, which means that, by default, .NET Applications will not support file://-based proxy scripts any longer either.

If you want to enable the file protocol for later version than IE10 you can always use the following registry setting:

  • Key: HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\
  • Value: EnableLegacyAutoProxyFeatures
  • Type: REG_DWORD
  • Data: 1

See section "NOTE: File://-based Proxy Scripts Deprecated" here.

Victor

Posted 2010-09-21T09:12:45.550

Reputation: 51

4

What happens if you use the dot, as Wikipedia also discusses: file://./C:/proxy.pac? So long as it is not on a sharename, this "spelling" of the path might be acceptable to both IE and Safari.

Alternatively, run a local webserver and serve the .pac file, then provide the URL as http://localhost/path/to/proxy.pac. That should work around the differences in path URL formats by avoiding using a path URL entirely.

Jeremy W. Sherman

Posted 2010-09-21T09:12:45.550

Reputation: 606