去privoxy官网下载zip包或安装包,里面有manual
或者尝试先在本机安装(安装后有manual)试用,在本机写好config/action/filter等,再ssh到dd-wrt,把config这些文件传过去,重启privoxy
config 是主配置,里面载入action/filter
action 是执行动作,拦截或转向等等
filter 是替换内容,主要是正则语法,只对http有效,对https无效,因为后者不是明文
例子:
config文件
==================
# 其他网络参数略,请参考手册
actionsfile /etc/privoxy/proxy.action
actionsfile /etc/privoxy/block.action
filterfile /etc/privoxy/user.filter
# 路径根据自己的系统,载入文件名随意,但扩展名不能改
==================
proxy.action文件
==================
{{alias}}
goagent = +forward-override{forward 127.0.0.1:8087} +change-x-forwarded-for{block}
ssh = +forward-override{forward-socks5 127.0.0.1:7070 .} +change-x-forwarded-for{block}
# 注意socks5那行有个半角圆点
# 井号开头为注释
{ssh}
#CDN
.gravatar.com
{goagent}
#google
.google.at
====================
block.action文件
====================
{{alias}}
block_js = +block{Layered ads.} +handle-as-empty-document
# 这个其实是整个文档 block 掉,js是我随意写的,旧版privoxy返回404,新版返回403
# 不向外发送请求,就是没有网络outgoing query
{block_js}
## 360
webscan.360.cnimg.webscan.360.cns.360.cn## 网易
www.163.com/.*/hot_pop_js\.js
g.163.com# 下面的这个需要和filter文件一起用,根据规则替换部分内容
# 花括号的名字可以随便,和filter里面相同就可以
# 我用域名只是方便查找,因为我这边filter有几千条
{+filter{
fanyi.youdao.com} +server-header-tagger{content-type}}
fanyi.youdao.com======================
user.filter文件
======================
FILTER:
fanyi.youdao.coms@(.*id=)(['"])(advertisement)\2[^>]*>@$1$2block_$3$2 style="display:none">@gi
s@(.*id=)(['"])(advertText)\2[^>]*>@$1$2block_$3$2 style="display:none">@gi
s@(.*id=)(['"])(microBlog)\2[^>]*>@$1$2block_$3$2 style="display:none">@gi
FILTER: 其他,略
======================
privoxy 可以针对 http 协议做很多事,例如改 agent, language, refer, cookies……
另外,正则替换可以做很多事,例如把</body>替换为<script...>...</script></body>,你就可以插入一段自写的脚本。换个角度看,不清楚规则和工作原理的广告拦截工具不要随便用,其实很危险的