应用程序路径定义了受 Access 策略保护的 URL。在将自托管应用程序添加到 Access 时,您可以选择通过输入其顶点域(apex domain)来保护整个网站,或者保护特定的子域和路径。
Cloudflare Zero Trust 允许您为共享根路径的应用程序部分创建独特的规则。假设一个示例应用程序部署在 dashboard.com/eng,工程团队中的任何人都应该能够访问它。但是,部署在 dashboard.com/eng/exec 的工具只能由高管团队访问。
当为公共根路径设置了多个规则时,更具体的规则优先。例如,当分别对 dashboard.com/eng 和 dashboard.com/eng/exec 设置规则时,针对 dashboard.com/eng/exec 的更具体的规则优先,并且不会从 dashboard.com/eng 继承任何规则。如果没有为 dashboard.com/eng/exec 设置单独的、具体的规则,它将继承为 dashboard.com/eng 设置的任何规则。
当您为特定子域或路径创建应用程序时,可以使用星号(*)作为通配符。通配符允许您将正在创建的应用程序扩展到给定顶点域(apex domain)中的多个子域或路径。
**Subdomain(子域)**字段中的通配符仅匹配该特定子域级别。它不包括顶点域或子域的多个级别。如果您想覆盖多个子域级别,可以使用多个通配符。
| 应用程序 | 覆盖 | 不覆盖 |
|---|---|---|
*.example.com |
alpha.example.com beta.example.com |
example.com foo.bar.example.com |
要保护顶点域及其下的所有路径,请将 **Path(路径)**字段留空。或者,在 Path(路径) 字段中使用通配符。
| 应用程序 | 覆盖 | 不覆盖 |
|---|---|---|
example.com 或 example.com/* |
example.com example.com/alpha example.com/beta |
alpha.example.com |
在 Subdomain(子域名) 字段中使用通配符不包括父子域也不包括顶点域。
| 应用程序 | 覆盖 | 不覆盖 |
|---|---|---|
*.test.example.com |
alpha.test.example.com beta.test.example.com |
test.example.com example.com |
在 Subdomain(子域名) 字段的开头或结尾使用通配符不包括子域的多个级别。
| 应用程序 | 覆盖 | 不覆盖 |
|---|---|---|
*test.example.com |
test.example.com alphatest.example.com |
beta.test.example.com |
在 Path(路径) 字段中使用通配符不包括父路径也不包括顶点域。
| 应用程序 | 覆盖 | 不覆盖 |
|---|---|---|
example.com/alpha/* |
example.com/alpha/one example.com/alpha/two |
example.com/alpha example.com |
在 Path(路径) 字段中间使用通配符将覆盖 URL 的多个片段。
| 应用程序 | 覆盖 |
|---|---|
example.com/foo*/bar |
example.com/foo/barexample.com/food/bar example.com/food/stuff/bar |
- Subdomain 中每个点(dot)之间最多有一个通配符。例如,不允许使用
foo*bar*baz.example.com。 - Path(路径) 中每个斜杠(slash)之间最多有一个通配符。例如,不允许使用
example.com/foo*bar*baz。
子域设置允许您独立于其父域来管理子域。在 Access 应用程序路径中,您配置的子域将显示在 Domain(域名) 下拉菜单中。如果您拆分出一个已具有 Access 应用程序的子域,则需要重新保存该 Access 应用程序以将其与新的子域关联。
Access 应用程序路径不支持端口号。如果请求在 URL 中包含端口号,Access 将剥离端口号并将请求重定向到默认的 HTTP/HTTPS 端口。
Access 应用程序路径不支持查询字符串(例如 ?foo=bar)。
由于锚点链接是由浏览器而不是服务器处理的,因此 Access 应用程序不支持 URL 中的 # 字符。例如,对 dashboard.com/#settings 的请求将重定向到 dashboard.com。