Skip to content

Commit 7b4c9e1

Browse files
authored
Merge branch 'cloudflare:production' into feature/content-version-management-system
2 parents 9357018 + 6ed8bac commit 7b4c9e1

File tree

12 files changed

+132
-85
lines changed

12 files changed

+132
-85
lines changed

src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/domain-support/remove-custom-hostnames.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ If the custom hostname is in a **Moved** state for seven days, it will transitio
2626

2727
If your customer's domain is not using Cloudflare, you must remove a customer's custom hostname from your zone if they decide to churn.
2828

29-
This is especially important if your end customers are using Cloudflare because if the custom hostname changes the DNS target to point away from your SaaS zone, the custom hostname will continue to route to your service. This is a result of the [custom hostname priority logic](/ssl/reference/certificate-and-hostname-priority/#hostname-priority-cloudflare-for-saas).
29+
This is especially important if your end customers are using Cloudflare because if the custom hostname changes the DNS target to point away from your SaaS zone, the custom hostname will continue to route to your service. This is a result of the [custom hostname priority logic](/ssl/reference/certificate-and-hostname-priority/#hostname-priority).
3030

3131
<Tabs syncKey="dashPlusAPI"> <TabItem label="Dashboard">
3232

src/content/docs/cloudflare-for-platforms/cloudflare-for-saas/reference/troubleshooting.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ There are three main causes of error 1016:
3333

3434
1. Custom Hostname ownership validation is not complete. To check validation status, run an API call to [search for a certificate by hostname](/cloudflare-for-platforms/cloudflare-for-saas/start/common-api-calls/) and check the verification error field: `"verification_errors": ["custom hostname does not CNAME to this zone."]`.
3535
2. Fallback Origin is not [correctly set](/cloudflare-for-platforms/cloudflare-for-saas/start/getting-started/#1-create-fallback-origin). Confirm that you have created a DNS record for the fallback origin and also set the fallback origin.
36-
3. A Wildcard Custom Hostname has been created, but the requested hostname is associated with a domain that exists in Cloudflare as a standalone zone. In this case, the [hostname priority](/ssl/reference/certificate-and-hostname-priority/#hostname-priority-cloudflare-for-saas) for the standalone zone will take precedence over the wildcard custom hostname. This behavior applies even if there is no DNS record for this standalone zone hostname.
36+
3. A Wildcard Custom Hostname has been created, but the requested hostname is associated with a domain that exists in Cloudflare as a standalone zone. In this case, the [hostname priority](/ssl/reference/certificate-and-hostname-priority/#hostname-priority) for the standalone zone will take precedence over the wildcard custom hostname. This behavior applies even if there is no DNS record for this standalone zone hostname.
3737

3838
In this scenario each hostname that needs to be served by the Cloudflare for SaaS parent zone needs to be added as an individual Custom Hostname.
3939

src/content/docs/dns/manage-dns-records/index.mdx

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,40 @@ sidebar:
66

77
---
88

9-
import { DirectoryListing, FeatureTable, GlossaryTooltip } from "~/components"
9+
import { DirectoryListing, FeatureTable, GlossaryTooltip, Details, Example } from "~/components"
1010

1111
DNS records contain information about your domain and are used to make your website or application available to visitors and other web services.
1212

13-
For background about different types of DNS records, refer to the [Learning Center](https://www.cloudflare.com/learning/dns/dns-records/).
13+
Depending on the providers you used to [get your domain name](/fundamentals/setup/manage-domains/#get-a-domain-name) and [host your website or application](/fundamentals/setup/manage-domains/#host-your-domain), it is expected that DNS records were automatically created on your behalf. According to your [setup](/dns/get-started/), you can use Cloudflare to manage your DNS records.
14+
15+
## DNS records table
16+
17+
DNS records have different types and each type serves a different purpose. For background about the different types of DNS records, refer to the [Learning Center](https://www.cloudflare.com/learning/dns/dns-records/). To quickly find reference information about a specific type refer to [DNS record types](/dns/manage-dns-records/reference/dns-record-types/).
18+
19+
When managing your records at Cloudflare, besides the common record fields described below, you may also find an option for [Proxy status](/dns/manage-dns-records/reference/proxied-dns-records/) and [CNAME flattening](/dns/cname-flattening/). These are specific features offered by Cloudflare.
20+
21+
<Details header="Record fields">
22+
- **Type**: Defines the purpose of a record. Different types of record require different information in their corresponding `Content` field.
23+
- **Name**: Identifies the resource that the record resolves to. Depending on the purpose of the record, the value you want to add to this field will also change.
24+
- **Content**: Contains the core value of a record, depending on the record type.
25+
- **TTL**: Controls how long each record is cached by DNS resolvers.
26+
</Details>
27+
28+
<Details header="Example">
29+
30+
<Example>
31+
DNS management for **example.com**:
32+
33+
| Type | Name | Content | Proxy status | TTL |
34+
| ---- | ------- | ------------ | ------------ | ------ |
35+
| A | `blog` | `192.0.2.1` | Proxied | Auto |
36+
37+
In this example, an IP address resolution record of type `A` is indicating that the resources that correspond to the subdomain `blog.example.com` can be reached on the IPv4 address `192.0.2.1`.
38+
39+
Also, as this record is <GlossaryTooltip term="proxy status" link="/dns/manage-dns-records/reference/proxied-dns-records/">proxied</GlossaryTooltip>, Cloudflare automatically defines for how long this information should be cached by DNS resolvers.
40+
</Example>
41+
42+
</Details>
1443

1544
## DNS records quota
1645

src/content/docs/rules/url-forwarding/bulk-redirects/how-it-works.mdx

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@ sidebar:
66
label: How it works
77
---
88

9+
import { MetaInfo } from "~/components";
10+
911
For each incoming request, Cloudflare evaluates all URL redirects of each Bulk Redirect List that is enabled by a Bulk Redirect Rule.
1012

1113
If there is a match for a URL redirect according to the URL matching algorithm, the redirect action is performed immediately, according to the URL redirect configuration parameters. Cloudflare performs no further processing once a redirect action has been executed.
@@ -14,27 +16,25 @@ If there is a match for a URL redirect according to the URL matching algorithm,
1416

1517
The following URL redirect parameters control the matching behavior between the request URL and source URLs of the configured (and enabled) URL redirects:
1618

17-
- **Subpath matching** (default: false)
18-
19-
- If true, the URL redirect will apply to all paths under the given source path. For example, consider the following source and target URLs of a URL redirect:
19+
- **Subpath matching** <MetaInfo text="(default: false)"/>
2020

21-
— Source URL: `https://example.com/foo/`
21+
- If `true`, the URL redirect will apply to all paths under the given source path. For example, consider the following source and target URLs of a URL redirect:
2222

23-
— Target URL: `https://example.com/qux/`
23+
- Source URL: `https://example.com/foo/`
24+
- Target URL: `https://example.com/qux/`
2425

2526
- With this configuration and **Subpath matching** enabled, an incoming request to `example.com/foo/bar` will be redirected to `https://example.com/qux/bar`.
2627

2728
:::note
2829
URL redirects with **Subpath matching** enabled cannot contain more than 16 `/` (slash) characters in the source URL path.
2930
:::
3031

31-
- **Include subdomains** (default: false)
32-
33-
- If true, the source URL hostname of the URL redirect will also apply to all its subdomains. For example, consider the following source and target URLs of a URL redirect:
32+
- **Include subdomains** <MetaInfo text="(default: false)"/>
3433

35-
— Source URL: `https://example.com/about`
34+
- If `true`, the source URL hostname of the URL redirect will also apply to all its subdomains. For example, consider the following source and target URLs of a URL redirect:
3635

37-
— Target URL: `https://example.com/newpage`
36+
- Source URL: `https://example.com/about`
37+
- Target URL: `https://example.com/newpage`
3838

3939
- With this configuration and **Includes subdomains** enabled, incoming requests to `http://a.example.com/about` and `http://a.b.example.com/about` would also match, in addition to the specified domain with no subdomain (`https://example.com/about`).
4040

@@ -44,29 +44,27 @@ For detailed information on these parameters, refer to [URL redirect parameters]
4444

4545
The following parameters configure how Cloudflare determines the path and query string of the final target URL:
4646

47-
- **Preserve query string** (default: false)
47+
- **Preserve query string** <MetaInfo text="(default: false)"/>
4848

49-
- If true, the final target URL will keep the query string of the original request. For example, consider the following source and target URLs of a URL redirect:
49+
- If `true`, the final target URL will keep the query string of the original request. For example, consider the following source and target URLs of a URL redirect:
5050

51-
— Source URL: `https://example.com/about`
52-
53-
— Target URL: `https://example.com/newpage`
51+
- Source URL: `https://example.com/about`
52+
- Target URL: `https://example.com/newpage`
5453

5554
- With this configuration and **Preserve query string** enabled, an incoming request to `http://example.com/about?q=term` would be redirected to `https://example.com/newpage?q=term`. If **Preserve query string** is disabled, the same incoming request would be redirected to `https://example.com/newpage`.
5655

57-
- **Preserve path suffix** (default: true)
56+
- **Preserve path suffix** <MetaInfo text="(default: true)"/>
5857

5958
- Defines if the final target URL will include the parts of the request path that did not match the URL redirect's source URL.
6059

6160
- When **Subpath matching** is enabled, the path that was not matched is copied over to the final target URL. For example, consider the following source and target URLs of a URL redirect:
6261

63-
— Source URL: `https://example.com/a/`
64-
65-
— Target URL: `https://example.com/b/`
62+
- Source URL: `https://example.com/a/`
63+
- Target URL: `https://example.com/b/`
6664

6765
- An incoming request to `https://example.com/a/foo` will be redirected to `https://example.com/b/foo`.
6866

69-
- If you set **Preserve path suffix** to false, the same request will still match the redirect, but it will be redirected to `https://example.com/b/`.
67+
- If you set **Preserve path suffix** to `false`, the same request will still match the redirect, but it will be redirected to `https://example.com/b/`.
7068

7169
For detailed information on these parameters, refer to [URL redirect parameters](/rules/url-forwarding/bulk-redirects/reference/parameters/).
7270

src/content/docs/rules/url-forwarding/bulk-redirects/reference/parameters.mdx

Lines changed: 59 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -5,54 +5,78 @@ sidebar:
55
order: 3
66
---
77

8+
import { Type, MetaInfo } from "~/components";
9+
810
A URL redirect has a source URL, a target URL, a status code, and some additional parameters that affect its URL matching behavior and runtime behavior.
911

10-
The URL redirect parameters are the following:
12+
## Source URL
13+
14+
API field: `source_url` <Type text="String" />
15+
16+
The URL string that the incoming request URL must match for the redirect to be applied. This property is mandatory. The maximum length of the source URL is 32 KB.
17+
18+
The value must be a valid URL, but the URL scheme is not required (for example, `https`); when the scheme is omitted, the redirect applies to both `http` and `https` URL schemes.
19+
20+
A Bulk Redirect List cannot contain several URL redirects with the exact same source URL.
21+
The exact behavior of the [URL matching algorithm](/rules/url-forwarding/bulk-redirects/how-it-works/#url-matching-algorithm), which matches an incoming request with the redirect's source URL, depends on the values of the [**Include subdomains**](#include-subdomains) and [**Subpath matching**](#subpath-matching) parameters.
22+
23+
For more information on the supported URL components, refer to [Supported URL components](/rules/url-forwarding/bulk-redirects/reference/url-components/).
24+
25+
## Target URL
26+
27+
API field: `target_url` <Type text="String" />
28+
29+
The URL where the client will be redirected to when there is a match for the URL redirect. This property is mandatory. The maximum length of the target URL is 32 KB.
30+
31+
The value must be a valid URL. The final target URL depends on the values of the [**Preserve query string**](#preserve-query-string) and [**Preserve path suffix**](#preserve-path-suffix) parameters.
32+
33+
For more information on the supported URL components, refer to [Supported URL components](/rules/url-forwarding/bulk-redirects/reference/url-components/).
34+
35+
## Subpath matching
36+
37+
API field: `subpath_matching` <Type text="Boolean" /> <MetaInfo text="default: false" />
38+
39+
If `true`, the current redirect will apply the subpath matching algorithm to the request URL when determining if there is a match for the current URL redirect.
40+
41+
For example, a URL redirect from `/my-folder/` to `/other-folder/` with **Subpath matching** enabled will also redirect a request from `/my-folder/item` to `/other-folder/item`. However, the redirect will only include the `item` part when [**Preserve path suffix**](#preserve-path-suffix) is `true`.
42+
43+
For more information, refer to [Matching the source URL of redirects](/rules/url-forwarding/bulk-redirects/how-it-works/#matching-the-source-url-of-redirects).
44+
45+
## Include subdomains
46+
47+
API field: `include_subdomains` <Type text="Boolean" /> <MetaInfo text="default: false" />
48+
49+
If `true`, the source URL hostname will also apply to any subdomains — the redirect will match for all subdomains to the left of the domain portion of the source URL, as well as the specified domain.
50+
51+
For example, a redirect with source URL defined as `http://example.com/about` will also apply to requests with source URL `http://a.example.com/about` or `http://a.b.example.com/about`.
1152

12-
- **Source URL** (String)
53+
For more information, refer to [Matching the source URL of redirects](/rules/url-forwarding/bulk-redirects/how-it-works/#matching-the-source-url-of-redirects).
1354

14-
- API field name: `source_url`.
15-
- The URL string that the incoming request URL must match for the redirect to be applied. This property is mandatory. The maximum length of the source URL is 32 KB.
16-
- The value must be a valid URL, but the URL scheme is not required (for example, `https`); when the scheme is omitted, the redirect applies to both `http` and `https` URL schemes.
17-
- A Bulk Redirect List cannot contain several URL redirects with the exact same source URL.
18-
- The exact behavior of the [URL matching algorithm](/rules/url-forwarding/bulk-redirects/how-it-works/#url-matching-algorithm), which matches an incoming request with the redirect’s source URL, depends on the values of the **Include subdomains** and **Subpath matching** parameters.
19-
- For more information on the supported URL components, refer to [Supported URL components](/rules/url-forwarding/bulk-redirects/reference/url-components/).
55+
## Preserve query string
2056

21-
- **Target URL** (String)
57+
API field: `preserve_query_string` <Type text="Boolean" /> <MetaInfo text="default: false" />
2258

23-
- API field name: `target_url`.
24-
- The URL where the client will be redirected to when there is a match for the URL redirect. This property is mandatory. The maximum length of the target URL is 32 KB.
25-
- The value must be a valid URL. The final target URL depends on the values of the **Preserve query string** and **Preserve path suffix** parameters.
26-
- For more information on the supported URL components, refer to [Supported URL components](/rules/url-forwarding/bulk-redirects/reference/url-components/).
59+
If `true`, the redirect URL will keep the query string of the original request.
2760

28-
- **Subpath matching** (Boolean)
61+
For example, a URL redirect from `/my-folder/` to `/other-folder/` with **Preserve query string** enabled will redirect a request from `/my-folder/?name=value` to `/other-folder/?name=value`. If **Preserve query string** is disabled, the request will be redirected from `/my-folder/?name=value` to `/other-folder/`.
2962

30-
- API field name: `subpath_matching`.
31-
- If true, the current redirect will apply the subpath matching algorithm to the request URL when determining if there is a match for the current URL redirect. The default value is `false`.
32-
- For example, a URL redirect from `/my-folder/` to `/other-folder/` with **Subpath matching** enabled will also redirect a request from `/my-folder/item` to `/other-folder/item`. However, the redirect will only include the `item` part when **Preserve path suffix** is true. Refer to **Preserve path suffix** for details.
33-
- For more information, refer to [Matching the source URL of redirects](/rules/url-forwarding/bulk-redirects/how-it-works/#matching-the-source-url-of-redirects).
63+
## Preserve path suffix
3464

35-
- **Include subdomains** (Boolean)
65+
API field: `preserve_path_suffix` <Type text="Boolean" /> <MetaInfo text="default: true" />
3666

37-
- API field name: `include_subdomains`.
38-
- If true, the source URL hostname will also apply to any subdomains — the redirect will match for all subdomains to the left of the domain portion of the source URL, as well as the specified domain. The default value is `false`.
39-
- For example, a redirect with source URL defined as `http://example.com/about` will also apply to requests with source URL `http://a.example.com/about` or `http://a.b.example.com/about`.
40-
- For more information, refer to [Matching the source URL of redirects](/rules/url-forwarding/bulk-redirects/how-it-works/#matching-the-source-url-of-redirects).
67+
Applicable only when [**Subpath matching**](#subpath-matching) is enabled. If `true`, defines that the redirect URL will include the remaining (non-matched) path elements of the source URL, if any.
4168

42-
- <a name="preserve-query-string"></a> **Preserve query string** (Boolean)
69+
For example, when both **Subpath matching** and **Preserve path suffix** are enabled, a URL redirect from `/my-folder/` to `/another-folder/` will redirect an incoming request from `/my-folder/foo` to `/another-folder/foo`. If **Preserve path suffix** is disabled, the same request would still match the URL redirect, but it would redirect from `/my-folder/foo` to `/another-folder/`.
4370

44-
- API field name: `preserve_query_string`.
45-
- If true, the redirect URL will keep the query string of the original request. The default value is `false`.
46-
- For example, a URL redirect from `/my-folder/` to `/other-folder/` with **Preserve query string** enabled will redirect a request from `/my-folder/?name=value` to `/other-folder/?name=value`. If **Preserve query string** is disabled, the request will be redirected from `/my-folder/?name=value` to `/other-folder/`.
71+
## Status code
4772

48-
- **Preserve path suffix** (Boolean)
73+
API field: `status_code` <Type text="Integer" /> <MetaInfo text="default: 301" />
4974

50-
- API field name: `preserve_path_suffix`.
51-
- Applicable only when **Subpath matching** is enabled. If true, defines that the redirect URL will include the remaining (non-matched) path elements of the source URL, if any. The default value is `true`.
52-
- For example, when both **Subpath matching** and **Preserve path suffix** are enabled, a URL redirect from `/my-folder/` to `/another-folder/` will redirect an incoming request from `/my-folder/foo` to `/another-folder/foo`. If **Preserve path suffix** is disabled, the same request would still match the URL redirect, but it would redirect from `/my-folder/foo` to `/another-folder/`.
75+
The HTTP status code returned to the client when redirecting.
5376

54-
- **Status code** (Integer)
77+
The value must be one of the following:
5578

56-
- API field name: `status_code`.
57-
- The HTTP status code returned to the client when redirecting. The default value is `301`.
58-
- The value must be one of the following: `301` (Moved permanently), `302` (Found, also known as Moved temporarily), `307` (Temporary redirect), or `308` (Permanent redirect).
79+
- `301` (Moved permanently)
80+
- `302` (Found, also known as Moved temporarily)
81+
- `307` (Temporary redirect)
82+
- `308` (Permanent redirect)

0 commit comments

Comments
 (0)