最近两天发现,Chrome(版本 72.0.3626.109)中,Proxy SwitchyOmega(2.5.20)不能使用本地 PAC 文件了。具体表现为选择 PAC 模式,打开网页时显示如图:用谷歌搜索上述提示信息,发现了GitHub 上的这么一个 issue, ERR_MANDATORY_PROXY_CONFIGURATION_FAILED #1474,lewixliu 在回复中写道:
Seems it destn’t work for –proxy-pac-url setting “file:///xxx” and “data:…”, but works for “http://ip/xx.pac”.
So here’s a workaround, which cannot update web page list automatically.
1. export the pac script file.
2. run a web server, and put the pac file in web server.
3. disable the extension or switch to system setting.
4. run with: chrome –proxy-pac-url=”http://ip/xx.pac”
I tried the workaround on one PC, it works, but didn’t try more.
@FelisCatus, If “–proxy-pac-url” not support “data:…” any more, it there other way to set proxy?
于是我把 proxy.pac 放在 VPS 的 /var/www/html 目录中,并在“PAC 网址”填入 http://VPS 的 IP\proxy.pac,再点击“立即更新情景模式 ”。这样就可以正常使用 PAC 模式了。
仔细观察之后,发现 Proxy SwitchyOmega 的配置页面显示:“如果您使用本地 PAC 文件,则该情景模式只能单独使用,无法作为自动切换的结果。这是因为浏览器不允许读取本地文件。”(SwitchyOmega 的代码中有这句话) 这正和上面 lewixliu 的说法一致。
你应该注意到了,上面点击“立即更新情景模式 ”的时候,“PAC 网址”中的 PAC 文件内容就被读取到了“PAC 脚本”,因此,如果没有 VPS,那么不填写“PAC 网址”而直接在“PAC 脚本”填入 PAC 文件的内容,仍是有效的。
必须指出的是,另外有人说的的以管理员权限执行 netsh winsock reset catalog 再重启电脑的方法(也有人说 netsh winsock reset),在我遇到的情况下是无效的。毕竟同一台 PC 上其他浏览器就不存在这个问题。
特把这个过程记录下来,希望对和我遇到相同问题的人有参考价值。
2019-02-20 补充:
今天又在我的 Debian 9 升级了Chrome,发现本次升级是从 72.0.3626.96 到 72.0.3626.109。升级之后也是跟 Windows 7 中一样的问题,并且以同样的方式解决了问题。
这说明问题在于 Chrome 的新版本 72.0.3626.109。可让人很疑惑的是,72.0.3626.96 仍然会显示“如果您使用本地 PAC 文件,则该情景模式只能单独使用,无法作为自动切换的结果。这是因为浏览器不允许读取本地文件。”这句话。
欢迎分享或转载,转载请注明出处。
本文固定链接:https://www.oixxu.com/chrome-pac-error/
First posted at:https://steemit.com/cn/@wiw/chrome-pac
在chrome的扩展程序设置里,启用让switchyomega访问文件网址即可
扩展程序设置在哪里?请帮忙一下啦
Chrome右上角三个点的按钮→“更多工具”→“扩展程序”→Proxy SwitchyOmega “详细信息”→开启“允许访问文件网址”。
能留个联系方式吗,还是没弄好
这个很简单的啊,只要照着做就没问题。