-
Notifications
You must be signed in to change notification settings - Fork 40
高级设置
“高级设置 ” 页面所包含的设置要么还处于实验阶段,要么适合那些对如何更多控制 uBO 内部运作感兴趣的高级用户。
仅当控制面板的 设置 版块下的 “我是高级用户” 选项被勾选以后这些高级设置才可以访问,且会始终保持设置后的状态,即使“我是高级用户” 选项未被勾选:
所有可用的高级设置会在本文稍后介绍。请注意这些设置今后可能会做修改或删除,或有新设置加入。
如果你想要恢复特定的设置为默认值,只需删除它的值,uBO 会将默认值填入缺少的值当中。
如果你想要恢复所有设置为默认值,请删除所有值,然后点击 “应用更改 ” 按钮。
**重要提示:**部分高级设置我刻意不提供文档,原因是在我开发期间内部使用的,或还没决定好。所以请不要针对此事提交 issue -- issue 在没有更多评论的情况下会被关闭。
默认值:false
适用于 uBO 1.20 及更高版本。
如果设置为 true
,通用的过程式修饰规则将不再认为是无效规则而被丢弃。
无论何时打开或关闭该设置,用户都应负责任地了解到这将强制重新并载入所有过滤规则列表以便允许 uBO 以不同方式处理现有的通用过程式修饰规则。
默认值:30
秒
远端服务器响应请求失败多少秒后 uBO 显示相应的错误。
默认:{{date}} {{origin}}
适用于 uBO 1.17.7b2 及更高版本。
占位符会通过 {{...}}
进行识别。目前只支持以下三种占位符:
-
{{date}}
:将被替换为当前日期 -
{{time}}
:将被替换为当前时间 -
{{origin}}
:将被替换为过滤规则生效的站点信息
如果 autoCommentFilterTemplate
里找不到任何占位符,则该设置将禁用自动注释功能。这样我们就可使用 -
或 none
来禁用自动注释。
默认值:120
秒
该值用于设置自动更新程序启动,有确需更新的资源被获取时,在获取下一个确需更新的资源之前所等待的时间。该延迟有助于减轻加载/解析/编译已更新的规则列表时带来的 CPU 和内存资源占用压力。
默认值: 180
秒
适用于 uBO 1.19.3b9 及更高版本。
uBO 启动以后,在自动更新会话[1]开始之前所等待的秒数。
[1]“更新会话”表示 uBO 将查找并更新任何视为过期的内容。
默认值:7
小时
每次更新会话发生的时间间隔。在自动更新功能启用时,uBO 将始终在启动后的数分钟内打开一个更新会话。一旦首次更新会话完成,uBO 将等待 autoUpdatePeriod
设定的小时数之后才开始一个新的更新会话。
默认值:unset
适用于 uBO 1.25.2 及更高版本。
设置获取 benchmark dataset 的 URL,使得可以在发布版的 uBO 启动基准测试操作,而不是只在本地构建版本中启动。
Dataset 是 "whotracks.me" 在进行 Adblockers 性能研究 后发布的一系列 requests_top500.json.gz
数据集 URL。
建议你下载这个数据集,然后解压缩并用本地 URL 指向该资源以避免滥用远端服务器的带宽。对于基于 Chromium 的浏览器,你可以使用 file:///
这样的 URL 指向本地的副本。对于 Firefox 你得建一个简单的 HTTP 服务器,然后创建 http://localhost:8000/[...]
这样的 URL 指向本地的副本。
Benchmark 是 uBO 的内部基准测试之一:
-
µBlock.staticNetFilteringEngine.benchmark();
(初次实现,匹配结果的记录功能后续 已添加,用于比较及调试) µBlock.sessionFirewall.benchmark();
µBlock.cosmeticFilteringEngine.benchmark();
基准测试可以在浏览控制台后台执行。
该问题已在 1.25.1b7 版本中得到修复。consoleLogLevel
必须设置为 info
才能切实打印出结果。
默认值:11111/#F00 11010/#C0F 11001/#00F 00001
在 1.31.3b13 版本之前是:11111/#F00 11011/#C0F 11001/#00F 00001
(已设置 3p 的重新载入操作比特位)
在 1.22.0 版本之前是:11101 11001 00001
该选项从 1.21.0 版本开始引入,1.21.7b6 版本之后可根据 uBlock 图标角标颜色对应不同的屏蔽模式。
从 1.31.3b13 版本开始,当 3p 屏蔽模式放宽时,uBO 尝试自动重新载入 CSS 样式,而无需重新载入整个页面。
该选项可用于配置“放宽屏蔽模式”键盘快捷键的层叠状态,以及对应的角标颜色。
默认值包含四个颜色代码,不同代码以空格区隔开来,代表四种屏蔽模式:
困难模式 + 禁止脚本生效 |
中等模式 + 禁止脚本生效 |
中等模式 | 默认 |
---|---|---|---|
11111/#F00 | 11011/#C0F | 11001/#00F | 00001 |
每个代码由不同的比特位组成,比特位表示功能的状态(1 表示已屏蔽/已启用,0 表示未屏蔽/已禁用),还有一个可选择的分隔符 /
,后面是 CSS 颜色值[1]。
第三方框架 | 第三方脚本 | 第三方 | 禁止脚本生效 | 重新载入操作 | 分隔符 | CSS 颜色值[1] |
---|
按下“放宽屏蔽模式”可将当前 uBO 状态与 blockingProfiles
代码从左到右进行比较,如果不同则重新生效,接着如果“重新载入操作”是启用的话,则重新载入页面,最后重新调整 uBO 的图标角标颜色。
[1]: 颜色 的 CSS 数据类型
默认值:no-cache, no-store, must-revalidate
适用于 uBO 1.17.0 及更高版本。
配置 uBO 在应对浏览器 bug(参见 #229)时如何影响缓存机制的方式。
可用的值:
-
no-cache, no-store, must-revalidate
:- 一些不利的影响:部分文档本身 uBO 需以过滤规则或规则列表形式插入 CSP 命令,这类文档不可离线使用。
-
no-cache
:- 一些不利的影响:每次 uBO 需以过滤规则或规则列表形式插入 CSP 命令时,用户都需要跳过缓存重新载入页面。请注意跳过缓存重新载入不仅影响文档本身,也影响文档内的二级资源。
-
unset
:- 该值从 1.22.0 版本开始引入,表示关闭此路径。
相关的浏览器问题:
默认值:unset
1.18.6 版本开始支持 Firefox。
如果设置为 browser.storage.local
,uBO 将使用 WebExtensions 存储作为缓存存储后端。
此外,如果 IndexedDB 出于各种原因无法使用,uBO 将退而使用browser.local.storage
。
仅适用于 Chromium 平台的 uBO 1.18.2 及更高版本。
如果设置为 indexedDB
,uBO 将使用 IndexedDB 作为缓存存储的后端,潜在地提升性能并减少内存占用。详细情况参见 #328。
它额外带来的不良影响是在无痕浏览模式下过滤规则列表会显示为过期,参见 #399。
如果设置为 unset
,uBO 则会根据当前平台选择最佳存储后端。
默认值:true
适用于 uBO 1.16.21 及更高版本。
如果设置为 true,uBO 会在保存到缓存之前对数据以 lz4 格式进行压缩。缓存是用来存储已下载的过滤规则列表、已编译的过滤规则列表和快照。 该设置在 IndexedDB 用作缓存存储后端时生效(默认支持 Firefox 和 Firefox for Android)。相关讨论参见 #141。
默认值:true
,1.30.9rc2 版本之前是 false
该选项是 1.29.3b7 版本开始引入的。
启用数据压缩后发送至云端存储的功能。
默认值:true
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
该选项用于设置当 CNAME 主机名对于主机别名来说是第一方时,uBO 是否忽略并通过过滤引擎重新运行网络请求。
默认值:true
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
被过滤规则设置为例外时,网络请求是否可跳过解除隐藏 CNAME。
This is necessary so as to avoid undue breakage by having exception filters being rendered useless as a result of CNAME-uncloaking.
For example, google-analytics.com
uncloaks to www-google-analytics.l.google.com
and both hostnames appear in Peter Lowe's list, which means exception filters for google-analytics.com
(to fix site breakage) would be rendered useless as the uncloaking would cause the network request to be ultimately blocked.
默认值:unset
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
Possible values:
- Space-separated list of hostnames.
-
*
- all hostnames.
This tells uBO to NOT re-run the network request through uBO's filtering engine with the CNAME hostname.
This is useful to exclude commonly used actual hostnames from being re-run through uBO's filtering engine, so as to avoid pointless overhead.
默认值:true
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
Tells uBO to skip CNAME-lookup for root document.
默认值:120
分钟
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
This tells uBO to clear its CNAME cache after the specified time.
For efficiency purpose, uBO will cache alias=>CNAME associations for reuse so as to reduce calls to browser.dns.resolve
. All the associations will be cleared after the specified time to ensure the map does not grow too large and too ensure uBO uses up to date CNAME information.
默认值:false
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
Tells uBO whether to replay the whole URL or just the origin part of it.
Replaying only the origin part is meant to lower undue breakage and improve performance by avoiding repeating the pattern-matching of the whole URL -- which pattern-matching was most likely already accomplished with the original request.
默认值:true
该选项从 1.25.0 版本开始引入。
仅支持 Firefox。
该选项用于设置是否对主机名解除隐藏 CNAME。
Default: false
.
Introduced in 1.26.0.
Firefox only.
By default (set to false
) uBO will no longer cname-uncloak when it detects that network requests are being proxied.
This default behavior can be overridden by setting this option to true
.
This new advanced setting may disappear once the following Firefox issue is fixed: https://bugzilla.mozilla.org/show_bug.cgi?id=1618271
默认值:unset
适用于 uBO 1.18.5b1 及更高版本。
仅用于开发。
如果设置为 info
,uBO 会将调试消息输出到浏览器控制台。
默认值:false
如果设置为 true
,debugger;
statement 将在小脚本或小脚本插入器代码前插入。
默认值:false
适用于 uBO 1.17.3rc4 及更高版本。
仅用于开发。
如果设置为 true
,uBO 会在代码里关闭对 WebAssembly 的优化。
默认值:false
适用于 uBO 1.23.0 及更高版本。
如果设置为 true
,则恢复到 1.22.3b(“阻止 uBO 在会话中途重新载入”) 之前版本的更新形式。如果有可用的更新,扩展将无条件重新载入,否则扩展只在明确禁用再启用,或浏览器重新启动之后才重新载入。
正在开发中!请勿提交有关的 issue!
默认值:false
适用于 uBO 1.23.0 及更高版本。
启用一指一点功能,用于在记录台的概要面板中为静态扩充规则(例如修饰规则、小脚本规则和 html 规则)创建临时白名单规则。开关临时白名单规则的按钮会被标记为 #@#
:
所创建的白名单规则是临时的,重启 uBO 或手动禁用例外规则后该规则会消失。
After 1.28.0 restores ability to set allow rules from popup panel. The ability to point-and-click to create allow rules from the popup panel is no longer allowed by default. See commit message for reasoning. Tap twice on Ctrl if you want to access allow rules only temporarily.
默认值:false
如果设置为 true
,uBO 将不再尝试将被屏蔽的网络请求重定向到该资源的本地中立版本。重定向规则的主要目的是将资源屏蔽后导致的网页破损减到最低程度。
默认值:false
如果设置为 true
,uBO 将不再查找并把小脚本(scriplet)插入到网页。小脚本的主要目的是消除部分网站所使用的反过滤工具机制。
默认值:popup
适用于 uBO 1.23.0 及更高版本。
控制记录台在独立窗口启动时所使用的窗口类型。该值主要用于解决缺少/禁用标题栏按钮、窗口尺寸更改、不正确绘制的问题(#663)。
可用的值:
默认值:500
毫秒
当点击控制面板 “第三方规则列表” 版块下的 “立即更新” 按钮,该值表示在获取下一个需要更新的内容之前所等待的时间间隔。该延迟有助于担负加载、处理新的过滤规则列表所带来的性能压力,也充分考虑到避免要求远端服务器快速响应所有请求。
默认值:unset
这是弹出界面所使用的有效 CSS 字体大小值。如果你对默认字体大小值不满意,可以使用该值进行修改。
Default: 0
.
uBO 1.28.0 and above.
Set to 1
to force the height of the firewall pane to be no more than the height of the basic pane.
Solves clipping of the Overview Panel - #785 (comment).
默认值:1000
毫秒
适用于 uBO 1.16.21b2 及更高版本。
控制 uBO 内部处理其网络请求日志队列的延迟。网络请求日志队列的出现是为了修复 issue 2053。
修复该 issue 带来的额外积极效果就是产生了一个在扩展图标上显示已屏蔽请求数量时的延迟(参见 #155)。
设置比默认值更低的延迟会导致原修复的问题复现。
默认值:3
分钟
适用于 uBO 1.18.6 及更高版本。1.20.0 版本以前默认值是 11
分钟。
这是设置经过多少分钟后再创建 快照(过滤规则优化后的内部表达)。
默认值:120
秒
适用于 uBO 1.17.3b4 及更高版本。
控制“临时”跳过严格屏蔽的持续时间。
默认值:unset
,1.18.6 版本之前默认为 false
。
可设置值包括:
-
unset
- 留待平台选择最优行为(默认值) 行为(默认值,Firefox 启用,Chromium 禁用) -
no
- 启动时不暂停(suspend)标签页载入 -
yes
- 启动时暂停标签页载入
从 1.18.6 版本开始 Firefox 可重新配置该值(可禁用)。
在 uBO 1.18.0 和 1.18.6 版本之间该设置仅支持 Chromium。Firefox 因使用 “persistent startup listeners” 该设置现始终启用。
一旦启用,uBO 将在浏览器启动时严格屏蔽所有网络请求,直到 所有 规则列表和规则载入并就绪,在这段时间内 uBO 会强制重新载入在建立阶段有网络请求被屏蔽的标签页。
免责声明:特别是基于 Chromium 的浏览器,即使你开启这项设置,uBO 也无法 100% 保证浏览器启用时所有网络请求都会被屏蔽。这是浏览器设计上的问题,所以请不要在 uBO issue 页面汇报此类问题。
相关的浏览器问题:
- Chromium:https://bugs.chromium.org/p/chromium/issues/detail?id=523634
- Firefox:https://bugzilla.mozilla.org/show_bug.cgi?id=1378459,现已在 https://bugzilla.mozilla.org/show_bug.cgi?id=1447551 中被修复。
Default: unset
.
uBO 1.25.0 and above.
Possible values:
-
fenix
- to forcefully enable new, mobile-friendly, Popup UI layout. -
classic
- to revert back to old Popup UI (it was-
up to 1.27.0). -
unset
- uBO will use whatever UI flavor which is optimal for the current platform.
undocumented
Default: unset
.
uBO 1.28.0 and above.
Allow to bypass uBO's default CSS styles in case they are causing issues to specific users. It is the responsibility of the user to ensure the value of uiStyles
contains valid CSS property declarations. uBO will assign the value to document.body.style.cssText
.
For example, in the case of the issue #1044, one could set uiStyles
to font-family: sans-serif
to force uBO to the system font for its user interface. Another example is issue #1254 where in uBO v1.30.0 will be possible to adjust width of popup panels.
Default: unset
.
uBO 1.30.1b3 and above.
For development purposes only! DO NOT create issues about this feature!
Locked to dev build only in 1.31.3b5.
Allows to manually override dark mode theme status.
Possible values:
-
unset
: depending on uBO version - force light theme or uBO will pick the theme according to browser'sprefers-color-scheme
-
light
: force light theme -
dark
: force dark theme
默认值:false
适用于 1.22.0 及更高版本。
如果设置为 true
,不到一小时就手动1.27.0 获取远程资源时 uBO 会确保跳过浏览器缓存。
This is for the convenience of filter list maintainers who may want to test the latest version of their lists when fetched from their remote location.
默认值:unset
一条或多条用空格区隔开的 URL,其内容将被解析为令牌识别资源,用于redirect
或 小脚本插入 (+js(...)
) 的目的。
uBO 所期望的有效内容可以在 resources.txt 里查看,其余任何内容都将导致未定义的后果。
任何重复的令牌资源都将导致前一个资源被后一个资源替换。资源文件是按照 URL 样式的顺序载入,而 UBO 的默认资源文件始终最先载入。
额外的资源将在内建的资源文件更新时一并更新。清除 'uBlock filters' 这个内置规则列表的缓存会同时清除内置资源文件的缓存,这样将强制重新载入用户自定义的资源。
uBlock Origin - 一款支持 Chromium、Firefox 和 Safari 的高效过滤工具,快速且简洁