> For the complete documentation index, see [llms.txt](https://help.impact.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.impact.com/brand/zh/what-would-you-like-to-learn-about/platform-features/blocking-and-redirect-rules/build-redirect-rule-conditions.md).

# 构建重定向规则条件

每条重定向规则都从一个或多个条件开始。A *condition* 会检查传入流量的某些信息，例如着陆页 URL、国家/地区或设备类型，并判断该规则是否适用。了解更多关于如何 [创建重定向规则](/brand/zh/what-would-you-like-to-learn-about/platform-features/blocking-and-redirect-rules/create-a-redirect-rule.md).

## 条件属性

下表列出了可在规则中使用的条件属性。

<details>

<summary>条件属性参考</summary>

| 条件属性        | 说明                                                                                                                                                                                                                                                                    |
| ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 着陆页         | 原始目标 URL。                                                                                                                                                                                                                                                             |
| IP 地址       | 设备注册的 IP 地址。                                                                                                                                                                                                                                                          |
| 共享 ID       | 由合作伙伴控制、用于报告的查询字符串参数。                                                                                                                                                                                                                                                 |
| 国家          | 流量来源国家/地区。                                                                                                                                                                                                                                                            |
| 状态          | 流量来源州/省。                                                                                                                                                                                                                                                              |
| 广告状态        | 相关广告的使用状态。                                                                                                                                                                                                                                                            |
| SubID1      | 由合作伙伴控制、用于报告的查询字符串参数。                                                                                                                                                                                                                                                 |
| SubID2      | 由合作伙伴控制、用于报告的查询字符串参数。                                                                                                                                                                                                                                                 |
| SubID3      | 由合作伙伴控制、用于报告的查询字符串参数。                                                                                                                                                                                                                                                 |
| MP ID       | impact.com 为合作伙伴提供的唯一标识符                                                                                                                                                                                                                                              |
| 设备类型        | 当系统提示激活重定向规则时，客户正在使用的设备类型。                                                                                                                                                                                                                                            |
| 引荐 URL      | 将流量引荐到原始目标 URL 的网站 URL。                                                                                                                                                                                                                                               |
| 产品 SKU      | 广告主体的标识符，通常在产品目录中指定。                                                                                                                                                                                                                                                  |
| 广告 ID       | impact.com 为广告提供的唯一标识符。                                                                                                                                                                                                                                               |
| 概率          | 重定向规则会随机截取一部分流量进行改向。这主要用于 A/B 测试。                                                                                                                                                                                                                                     |
| 移动端回退       | <p>如果某个广告已 <a href="/brand/zh/what-would-you-like-to-learn-about/platform-features/blocking-and-redirect-rules/create-app-install-interstitials.md">移动回退</a> 配置，则关联的路由规则可以请求将流量重定向到各自的应用商店以下载应用。</p><p><em>移动端回退</em> 重定向规则通常在入驻期间设置。请查看你的技术规格，确认是否应配置移动端回退重定向规则。</p> |
| 应用名称        | 当系统提示激活重定向规则时，客户正在使用的应用名称。                                                                                                                                                                                                                                            |
| 浏览器名称       | 当系统提示激活重定向规则时，客户正在使用的浏览器名称。                                                                                                                                                                                                                                           |
| 操作系统名称      | 当系统提示激活重定向规则时，客户正在使用的操作系统名称。                                                                                                                                                                                                                                          |
| 应用内 WebView | 当系统提示激活重定向规则时，客户是否正在使用应用内 webview。                                                                                                                                                                                                                                    |

</details>

## 条件运算符

最有用的条件属性之一是 **着陆页**，因为它允许你基于传入的 URL 构建条件和重定向。下列运算符适用于 **着陆页** 属性。可用的运算符取决于你选择的属性：大多数属性提供的选项更少。例如， **移动端回退** 只提供 **为** 和 **不属于**.

<details>

<summary>条件运算符参考</summary>

| 运算符        | 说明                                                          |
| ---------- | ----------------------------------------------------------- |
| **包含**     | 属性值包含指定文本。                                                  |
| **以…开头**   | 属性值以指定文本开头。                                                 |
| **以……结尾**  | 属性值以指定文本结尾。                                                 |
| **匹配**     | 属性值匹配某个模式，其中可以包含占位符（`{NAME}`）用于捕获值的一部分，以及通配符（`*`）来匹配任何剩余字符。 |
| **在**      | 属性值属于指定的值列表之一。                                              |
| **不包含**    | 属性值不包含指定文本。                                                 |
| **不以……开头** | 属性值不以指定文本开头。                                                |
| **不以……结尾** | 属性值不以指定文本结尾。                                                |
| **不属于**    | 属性值并不完全等于指定值。                                               |
| **不属于**    | 属性值不在指定值列表中的任何一个之中。                                         |
| **正则表达式**  | 属性值匹配自定义正则表达式。                                              |

</details>

## 组合条件

你可以使用 **和**:

* 使用 **和** 来组合多个条件，当需要多个条件同时成立时使用，例如来自某个国家/地区且使用特定设备类型的流量。
* 选择 **添加另一个** 以添加一个独立的条件，它满足第一个条件或新条件中的任意一个即可，不必同时满足两者。这意味着 **添加另一个** 类似于一个 **或** 条件。

接下来的两部分将展示如何使用 *包含* 和 *匹配* 运算符创建重定向规则。

## 使用“包含”运算符

按 URL 分流流量的最简单方法是使用两条独立规则，并使用 **包含**。假设你希望任何落在英国页面上的人获得一个查询参数，而落在美国页面上的人获得另一个。

规则 1，英国流量：

1. 条件： `着陆页` **包含** `/uk`.
2. 操作：重定向到相同 URL，并在末尾添加 `?a=123` 。

规则 2，美国流量：

1. 条件： `着陆页` **包含** `/us`.
2. 操作：重定向到相同 URL，并在末尾添加 `?a=456` 。

每条规则都会检查传入 URL 中的一段文本（即 `/uk` 或 `/us`）。如果找到该文本，重定向规则就会在附加一个额外参数后将访问者继续转发。

这种方式非常适合简单的二选一分流，但这种技术无法复用原始 URL 的部分内容。为此，你需要使用 **匹配**.

## 使用“匹配”运算符

该 **匹配** 运算符可让你为整个 URL 编写一个模式，并用占位符标记其中一部分，占位符写作 `{PLACEHOLDER}`，这样你之后就可以在重定向中复用该精确部分。

<details>

<summary>使用带占位符的匹配</summary>

假设你销售鞋子，且每个英国商品页面看起来都像 `https://www.example.com/uk/<product-name>`。你希望将每一个页面重定向到合作伙伴网站上的同一页面，并保留产品名称。

1. 将条件设置为 `着陆页` **匹配** `https://www.example.com/uk/{PRODUCT}`，它可匹配任何以 `https://www.example.com/uk/` 后面的内容都会被捕获为 `PRODUCT`.
2. 通过输入以下内容进行测试 `https://www.example.com/uk/sneakers` 作为测试着陆页。你会得到结果：匹配成功，且 `{PRODUCT}` 设为 `sneakers`.
3. 将操作设置为重定向到 `https://www.example.com/uk/{PRODUCT}?a=123`，它会变成 `https://www.example.com/uk/sneakers?a=123` 一旦 `{PRODUCT}` 被捕获为 `sneakers`.

因此，占位符就像变量一样：它从传入 URL 中捕获到的任何文本，都会放到输出 URL 的相同位置。

</details>

<details>

<summary>使用带通配符的匹配</summary>

使用与上面完全相同的规则，尝试测试一个稍有不同的 URL：

1. 通过输入以下内容进行测试 `https://www.example.com/uk/sneakers/mens` 作为测试着陆页。你会得到结果：未找到匹配。

这是因为 **匹配** 运算符会将模式与整个 URL 进行检查，而不只是开头。该模式 `https://www.example.com/uk/{PRODUCT}` 只考虑 `/uk/`，而没有考虑额外的 `/mens`，因此匹配失败。

为了允许占位符后出现任意内容，请在模式末尾添加通配符（`*`）：

* 新模式： `https://www.example.com/uk/{PRODUCT}*`
* 这样现在既能匹配 `https://www.example.com/uk/sneakers` 和 `https://www.example.com/uk/sneakers/mens`. `{PRODUCT}` 仍然只捕获 `sneakers` （直到下一个 `/`）之前的内容，并且 `*` 仅吸收其后的任何内容。

如果你的模式不以 `*`结尾，则传入 URL 必须恰好在模式结束的相同位置结束，否则将无法匹配。

</details>

<details>

<summary>使用带多个占位符的匹配</summary>

你可以在同一个模式中使用多个占位符。假设你的商品页面实际上同时包含类别和 SKU，例如 `https://www.example.com/uk/shop/product/sneakers/SKU123-blue-running-shoe`，而且页面有时在其后还有额外内容（例如 `/reviews`).

1. 将条件设置为 `着陆页` **匹配** `https://www.example.com/uk/shop/product/{CATEGORY}/{SKU}*`，其中：
   * `{CATEGORY}` 捕获紧随其后的片段 `/product/`.
   * `{SKU}` 捕获其后的下一个片段。
   * 末尾的 `*` 允许后面跟随任何内容（例如 `/reviews`），这与上一节所学一致。
2. 通过输入以下内容进行测试 `https://www.example.com/uk/shop/product/sneakers/SKU123-blue-running-shoe/reviews`。你应该得到结果：匹配成功，且 `{CATEGORY}` 设为 `sneakers` 和 `{SKU}` 设为 `SKU123-blue-running-shoe`.
3. 将操作设置为重定向到 `https://www.example.com/redirect/{CATEGORY}/{SKU}`，它会变成 `https://www.example.com/redirect/sneakers/SKU123-blue-running-shoe` 一旦两个捕获值都被复用，就会如此。 `/reviews` 部分会被丢弃，因为重定向 URL 没有引用它。

</details>

<details>

<summary>通配符和占位符参考</summary>

下表列出了你在编写 **匹配** 规则时可以使用的语法。

| 语法         | 作用                                                 |
| ---------- | -------------------------------------------------- |
| `{NAME}`   | 用于捕获一个 URL 片段的占位符（直到下一个 `/` 或 URL 结束），以便在重定向操作中复用。 |
| `*`        | 匹配占位符后的所有剩余字符。当 URL 可能在你的模式之后还有额外内容时使用。            |
| 否 `*` 位于末尾 | 模式必须与 URL 完全匹配到其末尾，不允许有任何额外内容。                     |

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.impact.com/brand/zh/what-would-you-like-to-learn-about/platform-features/blocking-and-redirect-rules/build-redirect-rule-conditions.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
