动态过滤:默认拒绝模式 - fang5566/uBlock GitHub Wiki

返回"动态过滤"页面


默认拒绝(default-deny)是一种强大的屏蔽模式,所适合的用户通常认可大多数网页的第三方资源:

  • 并不 要获取
  • 增加了隐私暴露

严格来说,默认拒绝意味着先全部屏蔽,再让用户选择要放行的内容。但这种最严格的模式有些不切实际,意味着多数网页都会受损,大多数用户也很可能不选择使用。

uBlock 允许使用一些更宽松也更实际的默认拒绝模式类型,比如 默认拒绝第三方 资源(严格一些),或 默认拒绝第三方脚本/框架(相对宽松)。

默认拒绝第三方 的结果是有更多远端资源被屏蔽,而且是默认屏蔽任何非当前站点的第三方资源。这意味着网页有很大可能性出现渲染或运行不正常的情况:

屏蔽任何第三方资源
默认拒绝任何第三方资源:网页更有可能受损,用户得自行修复。

一种更友好的方式是只默认拒绝第三方脚本/框架。此时网页受损的可能性比屏蔽任何第三方资源要低很多,又能保留大多数的好处:

仅屏蔽第三方脚本/框架
默认拒绝第三方脚本/框架:网页受损更少,又能屏蔽上图所示的大多数第三方资源。

关于一条网络请求是否为第三方的定义如下:如果一条网络请求的域名与产生这条请求的网页的域名不一致,则为第三方请求。这里说的域名信息都来自官方的 Public Suffix 列表

使用默认拒绝模式的好处有很多,比如:

  • 提高网页载入速度
  • 减少流量消耗
  • 减少隐私暴露
  • 提高浏览器安全性
  • 节省浏览器内存和 CPU 占用

但这些好处并非唾手可得,通常默认拒绝模式需要你在初次访问网页时做些调整。以访问 The Guardian 网站为例:

默认拒绝

如上图所示, 你得解除对 theguardian.com 相关的一些第三方域名的屏蔽,网页才能正常显示和运行。注意那些深灰色的 noop 规则就是用来解除域名屏蔽的。

noop 规则与 allow 规则(绿色)的不同之处在于:allow 规则会忽略所有用于屏蔽的静态过滤规则,而 noop 规则只会忽略动态过滤规则,对静态过滤规则不会有任何影响。

别忘了所有规则一旦设置(或取消设置)完就立刻变成了永久规则。 从 v0.8.8.0 开始你需要点击挂锁图标才可以保存你的规则,因为默认所有规则都是临时规则。你可以随意把玩这些规则而不用担心污染了已有的规则集。如果你想保存某个站点的规则,只要点击挂锁图标就可以了,但必须保证面板至少有一条临时规则,图标才会出现。

你可以一键点击关闭当前站点的默认拒绝模式,只要点击 “3rd-party” 单元格将其设置为本地 noop 即可,就像下面这样:

默认拒绝
默认拒绝模式已取消。请注意图中 3rd-party frames(第三方框架)仍处于屏蔽状态:高优先级单元格的规则不会被低优先级单元格的规则覆盖。

这样当前站点(上例的 The Guardian 网站)的默认拒绝模式就被关闭了,而对静态过滤规则(例如 EasyListEasyPrivacy 等)没有任何影响。以上图为例,所有第三方框架仍处于屏蔽状态,通常有利于保护用户隐私和安全


uMatrixRequestPolicyPoliceman 相比, uBlock 动态过滤特性最大的不同是规则都是三进制的,而不是二进制。


本页面还在改进,今后还会添加以下内容:

你不必开启恶意域名规则列表,因为所有第三方资源都默认屏蔽了,uBlock 变得更简洁

默认屏蔽各种跟踪用户的服务器,你不必再提前去屏蔽 facebook、google、twitter、linkdin 等服务器了。

一些关于如何轻松修复受损页面的真实案例

⚠️ **GitHub.com Fallback** ⚠️