|
| 1 | +# Hostname Pre-Validation |
| 2 | + |
| 3 | +When adding a hostname to Umbraco Cloud, we ask you to point your DNS records to Umbraco Cloud. |
| 4 | + |
| 5 | +Sometimes it's difficult to change the DNS record to point to Umbraco Cloud due to: |
| 6 | +- Existing Proxy/Web Application Firewall (WAF) in front of the hostname (hostname is proxied outside of Umbraco Cloud) |
| 7 | +- Requiring a zero downtime migration to Umbraco Cloud (hostname needs to be ready in Umbraco Cloud before pointing DNS records to Umbraco Cloud) |
| 8 | + |
| 9 | +Add a hostname to Umbraco Cloud, activate the routing, and generate a certificate for the hostname before pointing it to Umbraco Cloud. |
| 10 | + |
| 11 | +After the pre-validation completes, you can keep using an outside proxy or migrate the hostname fully to Umbraco Cloud. This is done by pointing the DNS records to Umbraco Cloud. |
| 12 | + |
| 13 | +## When to Use Hostname Pre-Validation |
| 14 | + |
| 15 | +Use pre-validation in any of the following situations: |
| 16 | + |
| 17 | +- You're dealing with live or production domains that require 100% uptime. |
| 18 | +- The hostname will be proxied in front of Umbraco Cloud |
| 19 | +- You want to avoid the brief downtime that may occur while Transport Layer Security (TLS) certificates are being validated after pointing DNS to Umbraco Cloud. |
| 20 | + |
| 21 | +## How to Use Hostname Pre-Validation |
| 22 | + |
| 23 | +The following steps outline how to use hostname pre-validation. |
| 24 | + |
| 25 | +### 1. Enable Pre-Validation for the Hostname |
| 26 | + |
| 27 | +After adding your custom hostname in the Umbraco Cloud Portal: |
| 28 | + |
| 29 | +1. Navigate to **Hostname Settings**. |
| 30 | +2. Toggle the Pre-Validation option to enable it. |
| 31 | + |
| 32 | +Umbraco Cloud will provide two DNS records: |
| 33 | + |
| 34 | +- A **TXT** record used to verify domain ownership. |
| 35 | +- A **CNAME** record that is required for the TLS certificate issuance. |
| 36 | + |
| 37 | +<figure><img src="images/hostname-settings-modal.png" alt="This is an image of the Hostname settings modal"></figure> |
| 38 | + |
| 39 | +### 2. Add DNS Records at Your Domain Registrar |
| 40 | + |
| 41 | +1. Log in to your DNS provider or domain registrar. |
| 42 | +2. Add the records provided: |
| 43 | + |
| 44 | +| Record Type | Name | Value/Description | |
| 45 | +|-------------|--------------------------------------|-----------------------------------------------------------------------------------------| |
| 46 | +| TXT | `_cf-custom-hostname.\<hostname\>` | Provided by Umbraco Cloud | |
| 47 | +| CNAME | `_acme-challenge.\<hostname\>` | Points to a domain under Umbraco's control (e.g., \<hostname\>.xxxx.dcv.cloudflare.com) | |
| 48 | + |
| 49 | +{% hint style="info" %} |
| 50 | +DNS propagation times can vary. Changes may take a while to become active globally. Tools like https://www.nslookup.io/ can help verify that your records are live. |
| 51 | +{% endhint %} |
| 52 | + |
| 53 | +### 3. Check Validation Status |
| 54 | + |
| 55 | +Return to the Hostname page in Umbraco Cloud. You'll see a Hostname Pre-Validation status dialog showing the current status of your validation. |
| 56 | + |
| 57 | +The status will change to Active when everything is set up correctly. The hostname is validated, and the TLS certificate is issued. |
| 58 | + |
| 59 | +<figure><img src="images/pre-validation-status-modal.png" alt="This is an image of the Pre-Validation status modal"></figure> |
| 60 | + |
| 61 | +### 4. Point Your DNS to Umbraco Cloud / Activate proxying |
| 62 | + |
| 63 | +Once the certificate is issued: |
| 64 | + |
| 65 | +1. Update your domain's A record or CNAME to point to [Umbraco Cloud DNS](README.md#domains). |
| 66 | +2. Update your proxy to serve traffic from Umbraco Cloud. |
| 67 | + |
| 68 | +Your site will be accessible securely via HTTPS without any downtime because the certificate and routing setup are in place. |
| 69 | + |
| 70 | +### 5. Disable Pre-Validation and Clean Up DNS Records |
| 71 | + |
| 72 | +After the hostname is active and secure: |
| 73 | + |
| 74 | +1. Go back to Hostname Settings and disable the pre-validation method. |
| 75 | +2. Remove the TXT and CNAME records you added for pre-validation. |
| 76 | + |
| 77 | +Umbraco Cloud will automatically handle future certificate renewals without the need for manual DNS management. |
| 78 | + |
| 79 | +{% hint style="info" %} |
| 80 | +In a proxy case, you'll need to ensure that the URI `http://{custom-hostname}/.well-known/acme-challenge/{token}` is accessible. |
| 81 | +{% endhint %} |
| 82 | + |
| 83 | +## Custom Certificate |
| 84 | + |
| 85 | +If you plan to use a [custom certificate](security-certificates), the Hostname Pre-Validation method can be used to prove ownership of the hostname. This is done before binding the custom certificate. |
| 86 | + |
| 87 | +You can do this by following these steps: |
| 88 | + |
| 89 | +1. Enable Pre-Validation for the Hostname. |
| 90 | +2. Add the TXT record provided to your Domain Name System (DNS) settings. The record will prove ownership of the domain. |
| 91 | +3. Upload a custom certificate and set a binding to the Hostname. |
| 92 | +4. Wait a couple of minutes, then disable Pre-Validation for the Hostname. The status will now show "Manual" for the Hostname. |
0 commit comments