数码帮手
白蓝主题五 · 清爽阅读
首页  > 上网防护

网络代理自动配置脚本:让上网更高效安全

什么是网络代理自动配置脚本

你在公司或学校上网时,可能发现浏览器不用手动设置代理就能自动走指定通道。这背后很可能就是“网络代理自动配置脚本”在起作用。它的英文名叫 PAC(Proxy Auto-Configuration),本质是一个 JavaScript 脚本,告诉浏览器在访问不同网站时,该直连还是走代理。

它怎么工作的

PAC 文件里定义了一个叫 FindProxyForURL(url, host) 的函数。每当浏览器要打开一个网页,系统就会调用这个函数,传入目标网址和主机名,然后根据返回值决定连接方式。比如:

function FindProxyForURL(url, host) {
    if (host == "www.google.com") {
        return "PROXY 192.168.1.10:8080";
    }
    return "DIRECT";
}

上面这段脚本的意思是:访问 Google 走指定代理,其他网站直接连。这样一来,既节省资源,又能灵活控制流量走向。

实际使用场景

你在家办公,公司要求部分内部系统必须通过代理访问,但看视频、刷微博又希望速度快点,直接连。这时候手动切换代理太麻烦,PAC 脚本就能自动帮你分流。不少企业内网、高校校园网都用这种方式简化用户的网络配置。

自己写一个简单的 PAC 脚本

你可以把下面这段代码保存成 .pac 文件,或者放在服务器上提供 URL:

function FindProxyForURL(url, host) {
    // 内部系统走代理
    if (shExpMatch(host, "*.company.com")) {
        return "PROXY proxy.company.com:8080";
    }
    
    // 国内常见网站直连
    if (shExpMatch(host, "*.baidu.com") ||
        shExpMatch(host, "*.taobao.com") ||
        shExpMatch(host, "*.qq.com")) {
        return "DIRECT";
    }
    
    // 其他流量默认走代理
    return "PROXY default-proxy:8080";
}

然后在浏览器或系统网络设置中填入这个脚本的地址,比如:http://yourserver/proxy.pac,保存后就生效了。

安全注意事项

PAC 脚本虽然方便,但也存在风险。如果脚本来源不可信,可能被植入恶意逻辑,把你的流量导向钓鱼代理。所以一定要确保脚本来自可信网络环境,别随便导入来路不明的配置。

另外,脚本一旦部署,所有支持 PAC 的应用都会受影响。测试时建议先在单台设备上验证,避免影响整个局域网。

移动端也支持吗

支持。iOS 和 Android 都可以在 Wi-Fi 高级设置里填写 PAC 地址。不过要注意,部分国产 App 会忽略系统代理设置,尤其是国内主流社交、购物类应用,它们通常强制直连以提升速度或满足合规要求。

调试小技巧

写完脚本发现不生效?可以临时加个全局代理看看是否加载成功。也可以在函数开头插入 alert(仅限本地测试),确认脚本被执行。正式环境千万别留调试代码。

还可以用浏览器开发者工具查看请求的远程地址,结合代理日志判断流量是否按预期路由。