pac 翻q+屏蔽广告如何分流
请问,pac如何使用两个代理比如youtube 走代理1
国内广告走代理2 也就是127.0.0.1:80 之类的。屏蔽广告用
http://img.tiyan.me/ad.js
请问小樱 应该如何去写 分享一个自用的框架
// 设置
// config (1: 启用 | 0: 停用)
var config = {
hosts: 1,
blackList: 1,
digitalDomain: 0 // 屏蔽数字域名
};
// 代理主机
var hostsList = [
{domain:'localhost', ip:'127.0.0.1:80'},
{domain:'localhost.dev'}
];
// 黑名单
var blackList = [
{url:'http://12.123.123.12/'},
{url:'http://bbs.xxxx.com/ad/'},
{url:'http://www.xxxx.com/guanggao/'},
{domain:'xxx.cn'},
{domain:'xxx.net'},
{domain:'g.163.com'},
];
// 白名单
var whiteList = [
'xxx.cn',
'163.com',
'12306.cn',
];
function FindProxyForURL(url, host){
var direct = 'DIRECT;';
var proxy = '127.0.0.1:80';
var block = '0.0.0.0:80';
if(shExpMatch(host, '10.+.+.+')) return direct;
if(shExpMatch(host, '172.+.+.+')) return direct;
if(shExpMatch(host, '192.168.+.+')) return direct;
if(shExpMatch(host, '127.0.0.1')) return direct;
if(shExpMatch(host, 'localhost')) return direct;
if(shExpMatch(host, 'dl.google.com')) return direct;
if(config.blackList){
for(i in blackList){
if(blackList.url){
if(url.indexOf(blackList.url) > -1){
return 'PROXY '+ block +';';
};
};
if(blackList.domain){
if(shExpMatch(host, blackList.domain)){
return 'PROXY '+ block +';';
};
};
};
};
if(config.digitalDomain){
// 屏蔽数字域名和绕过白名单
var reg = /^([^.]+\.)*(\d+)(\.[^.]+)$/gi;
if(reg.exec(host) && whiteList.indexOf(RegExp.$2 + RegExp.$3) < 0){
return 'PROXY '+ block +';';
};
};
if(config.hosts){
// 代理的主机列表
for(i in hostsList){
if(dnsDomainIs(host, hostsList.domain)){
return 'PROXY '+ (hostsList.ip ? hostsList.ip : proxy) +';';
};
};
};
return direct;
} 楼上说了,也可以参考微软官网
https://technet.microsoft.com/zh-cn/library/cc985335.aspx krv 发表于 2016/8/18 16:55
分享一个自用的框架
设置后 只能上国内 不能出国 即使hostslist里加了规则也不行 求解
页:
[1]