✏️ ️1. P A C
PAC(Proxy auto-config) 意为代理自动配置服务, 主要是通过 Javascript 的文件解析你的域名信息来进行KX(科学)上网, 特点:
- 匹配响应速度块
- 可自定义需要代理的域名
- 可自定义不需要代理的域名
- 拒绝访问的服务可绕过代理, 降低资源消耗以及加快响应
- 还可以根据所请求的网站的主机/用户的IP地址/日期和时间等可获取的数据信息进行代理配置
function FindProxyForURL(url, host) {
url = url.toLowerCase();
host = host.toLowerCase();
if (
shExpMatch(url, "*youtube*") ||
shExpMatch(url, "*google*")) {
return "PROXY proxy_server";
}
return "DIRECT";
}
在上述 PAC 文件中定义了以下规则:
- 请求地址包含
youtube
或者google
的数据将使用代理 - 其余的都不使用代理
注意:
- HTTPS 请求默认不会使用代理转发
- HTTP 请求默认使用代理转发
- 你需要将
proxy_server
替换成你的代理服务器地址字符串, 如"127.0.0.1:9000"
- 保存的文件你可以使用
file:///
的本地方式作为代理 PAC 路径配置 - 你也可以作为服务器文件返回的方式
✏️ 2. F l a s k
#!/usr/bin/env python
# _*_ Coding: UTF-8 _*_
from flask import Flask, send_file
app = Flask(__name__, template_folder='./', static_folder="", static_url_path="")
@app.route('/')
def index():
return send_file(r'./pac.js')
if __name__ == '__main__':
host = '0.0.0.0'
port = 2345
debug = False
app.run(debug=debug, host=host, port=port)
当然, 你可能需要在同一目录保存一个 pac.js
的 PAC 文件, 当你启动后你就可以使用服务地址配置 PAC 代理了。
✏️ 3. w i n d o w s
我们可以在 windows 下使用改 PAC 代理服务:
- 使用
win
召唤出开始菜单 - 输入
代理
- 选择
代理服务器设置
- 在
自动设置代理
选项栏里将使用脚本
打开, 并输入 PAC 服务地址在脚本地址
中
至此配置完成, 你可以使用 PAC KX(科学)上网了。