---
title: uBlock Origin 回来了！第三方开发者将其完整功能移植到 Manifest V3
date: 2026-09-05T08:57:12Z
modified: 2026-09-05T08:57:20Z
permalink: "https://www.appinn.com/ublock-origin-mv3/"
type: post
status: publish
excerpt: ""
categories:
  - 日志
featured_image: "https://www.appinn.com/wp-content/uploads/2026/09/Copy-of-appinn-homework-2026-09-05T165423.784.jpg"
author: 青小蛙
timestamp: 2026-09-05T08:57:20Z
tags:
  - 日志
---

**uBlock Origin 回来了！**

在 [Chrome](https://www.appinn.com/chrome-151-manifest-v2-end-ublock-origin.md)/[Edge](https://www.appinn.com/edge-block-mv3-ublock-origin.md) 相继淘汰了 Manifest V2 标准的老旧插件之后，首当其冲就是强大的广告过滤插件 uBlock Origin 被淘汰。原作者也不太愿意折腾，但终于有人出手了！@[Appinn](https://www.appinn.com/ublock-origin-mv3.md)

![](https://www.appinn.com/wp-content/uploads/2026/09/Copy-of-appinn-homework-2026-09-05T165423.784.jpg)

一位名叫 **r58Playz** 的开发者，在原 uBlock Origin 的基础之上，利用 Chrome **给企业管理的扩展留了一个口子**，做出了一个支持 Manifest V3 的非官方移植版本，保留了原版的完整功能。

唯一的代价是…启动略麻烦。

感谢 @风舞淼痕 同学的[提醒](https://meta.appinn.net/t/90984/13)，青小蛙开始还没看懂，没想到啊没想到。

![](https://www.appinn.com/wp-content/uploads/2026/09/CleanShot-2026-09-05-at-4.32.58-PM-2x.avif)

![](https://www.appinn.com/wp-content/uploads/2026/09/CleanShot-2026-09-05-at-4.36.10-PM-2x.avif)## 如何安装 uBlock Origin MV3

- [官网地址](https://ublock.r58playz.dev/) / [GitHub](https://github.com/r58playz/uBlock-mv3)

首先需要 **Chrome 138 或更高版本**。

uBlock Origin MV3 有两种安装方式：

1. 通过企业 Policy 强制安装，功能最完整，但 Windows/macOS 普通电脑配置起来非常麻烦，可参考官网地址
2. **手动安装 CRX + Chrome 启动参数**，普通用户推荐这种。

下面主要介绍第二种。

### 第一步：下载 uBlock Origin MV3

首先下载开发者提供的 CRX 文件：

- `<a href="https://ublock.r58playz.dev/uBlock0_1.74.0.crx">https://ublock.r58playz.dev/uBlock0_1.74.0.crx</a>`

目前提供的是基于 **uBlock Origin 1.74.0** 制作的版本。

它的扩展 ID 为：


blockddmmcjpfkbhanlgegpmjpfpfjka


后面会用到。

### 第二步：把扩展加入 Chrome 白名单

如果使用的是正式版 Google Chrome，还需要先通过 Chrome Policy 将这个扩展加入允许安装列表，否则手动安装后 Chrome 可能会再次将它禁用。

#### Windows

按 `Win + R`，输入：


regedit


打开注册表编辑器，进入：


HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome


在这里创建：


ExtensionInstallAllowlist


最终路径为：


HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome\ExtensionInstallAllowlist


然后在里面新建一个「字符串值」：


名称：1
数据：blockddmmcjpfkbhanlgegpmjpfpfjka


如果已经存在 `1`，就依次使用 `2`、`3`……

修改完成后**彻底退出 Chrome**，包括仍然驻留在后台的 Chrome 进程，然后重新启动。

打开：


chrome://policy


确认 `ExtensionInstallAllowlist` 已经生效。

#### macOS

macOS 同样需要设置 Chrome 的：


ExtensionInstallAllowlist


对应的配置位于：


/Library/Managed Preferences/com.google.Chrome.plist


其中需要加入：


ExtensionInstallAllowlist
    blockddmmcjpfkbhanlgegpmjpfpfjka


注意，这里设置的是 **Allowlist**，并不是 `ExtensionInstallForcelist`。

普通、未受企业管理的 Mac 无法简单通过 plist 强制安装这个扩展，因此我们仍然需要使用下面的启动参数。

### 第三步：添加 Chrome 启动参数

这是整个安装过程最关键的一步。

需要让 Chrome 每次启动时都携带：


--allowlisted-extension-id=blockddmmcjpfkbhanlgegpmjpfpfjka


这个参数会让 Chromium 向这个 MV3 扩展开放 `webRequestBlocking` 权限。

#### Windows

找到平时使用的 Chrome 快捷方式，右键 →「属性」。

在「目标」最后面加一个空格，然后加入：


--allowlisted-extension-id=blockddmmcjpfkbhanlgegpmjpfpfjka


例如原来是：


"C:\Program Files\Google\Chrome\Application\chrome.exe"


修改为：


"C:\Program Files\Google\Chrome\Application\chrome.exe" --allowlisted-extension-id=blockddmmcjpfkbhanlgegpmjpfpfjka


以后需要通过这个快捷方式启动 Chrome。

Chrome 启动后会提示正在使用不受支持的命令行参数，这是正常现象。

**不要为了隐藏警告加入** `<strong>--test-type</strong>`，因为这个参数还会改变 Chrome 的其他行为。

#### macOS

先彻底退出 Chrome，然后可以通过终端测试：


open -a "Google Chrome" --args --allowlisted-extension-id=blockddmmcjpfkbhanlgegpmjpfpfjka


需要注意：

**以后每次启动 Chrome，都必须带着这个参数。**

所以实际长期使用时，可以制作一个带有该参数的启动脚本、快捷指令或其他启动器。

### 第四步：安装 CRX

现在打开：


chrome://extensions


打开右上角的：

**开发者模式（Developer mode）**

然后把第一步下载的：


uBlock0_1.74.0.crx


直接拖进这个页面。

Chrome 会询问是否安装扩展，确认即可。

### 第五步：打开 Allow User Scripts

安装完成后，进入 uBlock Origin 的扩展详情页面。

找到：

**Allow User Scripts**

将其打开。

这是因为这个 MV3 移植版本使用了 Chrome 的 `chrome.userScripts` API 来重新实现原版 uBlock Origin 的部分脚本注入功能。

### 第六步：等待 uBlock Origin 启动完成

刚刚启动时，uBlock Origin 图标可能会显示一个：


!


等待这个 `!` 消失即可。

如果一直没有消失，可以进入：


chrome://extensions


手动重新加载一次 uBlock Origin。

至此，**Manifest V3 版 uBlock Origin 就安装完成了。**

![](https://www.appinn.com/wp-content/uploads/2026/09/CleanShot-2026-09-05-at-4.55.23-PM-2x.avif)

---

## 为什么安装这么麻烦？

因为这个版本并没有把 uBlock Origin 改造成适用于 Manifest V3 的广告拦截器。

原版 uBlock Origin 最重要的能力之一，是通过：


webRequestBlocking


实时检查浏览器的网络请求，然后由自己的过滤引擎决定：


请求
 ↓
uBlock Origin
 ↓
过滤规则
 ↓
允许 / 拦截


但 Manifest V3 对普通扩展限制了这项权限，Chrome 更希望广告拦截器使用 `declarativeNetRequest`，也就是提前把过滤规则交给浏览器，由 Chrome 自己负责拦截。

这也是 uBlock Origin Lite 采用的方案。

然而 Chrome **给企业管理的扩展留了一个口子**：通过 Policy 安装的 MV3 扩展仍然可以获得 `webRequestBlocking`。

@r58Playz 利用了这个机制，把原来的 uBlock Origin 过滤引擎放进 Manifest V3 Service Worker 中继续运行。

而：


--allowlisted-extension-id


这个启动参数，可以绕过 Chromium 对 `webRequestBlocking` 的权限检查。

所以整个方案可以简单理解成：


Manifest V3
       ↓
利用 Chrome 保留的 webRequestBlocking 通道
       ↓
运行原版 uBlock Origin 过滤引擎
       ↓
保留完整的 uBlock Origin 功能


这也是为什么它安装起来比 uBlock Origin Lite 麻烦得多。

### 还有一个小区别

上面介绍的「CRX + 启动参数」方案虽然可以正常获得 `webRequestBlocking`，但和真正通过企业 Policy 安装仍然存在一点区别。

真正的 Policy 安装允许 `webRequestBlocking` 在 uBO 刚启动时返回 Promise，因此可以暂时把网络请求“扣住”，等过滤引擎准备完成后再处理。

普通用户使用启动参数安装时做不到这一点。

所以在 **uBO 刚刚启动的短暂时间里**，这个移植版会临时取消部分子资源请求，等过滤引擎启动完成以后，再重新加载受到影响的标签页。

**过滤引擎启动完成后，正常的网页过滤仍然是同步进行的。**

对于日常使用来说，主要区别基本集中在 Chrome 和 uBO 刚启动的这段时间。

---

## uBlock 不同版本间主要区别

如果，你现在使用 uBlock Origin Lite 时感觉到足够了，就别折腾了，青小蛙觉得太麻烦了。



| uBlock Origin | uBlock Origin Lite | 这个 uBlock Origin MV3 |  |
| --- | --- | --- | --- |
| 作者 | Raymond Hill | Raymond Hill | **第三方开发者** |
| Manifest | V2 | V3 | **V3** |
| Chrome 新版 | ❌ | ✅ | **✅，但需要特殊安装** |
| 过滤引擎 | uBO 原版 | DNR 重写 | **uBO 原版** |
| `webRequestBlocking` | ✅ | ❌ | **✅** |
| 自定义过滤 | ✅ | 很受限 | **✅ 基本保留** |
| 动态过滤 | ✅ | ❌ | **基本保留** |
| Scriptlet / CSS | ✅ | 部分 | **通过 MV3 API 重新实现** |
| 安装难度 | 以前很简单 | **很简单** | **很麻烦** |
| 官方 uBO | ✅ | 官方姊妹项目 | ❌ **非官方移植** |

---

原文：[https://www.appinn.com/ublock-origin-mv3/](https://www.appinn.com/ublock-origin-mv3.md)

## Topics

**分类目录:** [日志](https://www.appinn.com/category/daily/?output_format=md)