浏览器代理设置:通过脚本实现有规则的代理

通常浏览器中只能设置排除哪些站点不使用代理,但是这大大限制了灵活性。
我们可以使用pac脚本来编写自己的规则.
pac脚本使用javascript语言,而且基本上只用写一个函数:FindProxyForURL
function FindProxyForURL(url, host) {
/*
    if (isInNet(host, "10.0.0.0", "255.0.0.0")) {
        return "PROXY 10.234.20.20:8888";
    }
*/
    if (shExpMatch(url, "*192.168.10.*")) {
        return "PROXY 10.234.20.20:8888";
    }
    return "DIRECT";
}

这里介绍常用的两个函数:
isInNet:此函数判断目标站点IP是否属于指定子网,以做不同的代理设置。isInNet(host, , )
shExpMatch:此函数比对 是否符合 shexp 的表示式。
(此表示式为 shell expression 而非 regular expressions)。shExpMatch(, )

写好脚本后保存为.pac文件,我们这里起名为my.pac,我们将在浏览器中使用它

当然,你可以把文件上传到一个Web服务器上,在浏览器里设置文件url即可,如:

2020-09-08_130201.gif

但是最简单的办法,可以把文件存在本地,写上本地文件地址即可:
2020-09-08_130826.gif

注意,非Windows系统可能需要在file:后面多加一个/线。


可以在这里了解pac脚本更多内置函数

你可能感兴趣的:(浏览器代理设置:通过脚本实现有规则的代理)