Hostname verification

Prove you control a domain using a DNS TXT record or an HTTPS file, so you can warm it.

9 min read

Before Cache Rocket will send a single request to a domain, you must prove you control it. This page covers both verification methods and what to do when one fails.

Hostnames live under Account → Hostnames.

Why this is required

A cache warmer is a machine that sends many requests to a website very quickly. That is helpful when pointed at your own server and hostile when pointed at somebody else's — it is, functionally, a denial-of-service tool.

Verification is what separates the two. It means every request Cache Rocket sends on your behalf goes to infrastructure you have demonstrably proven you control. There is no way to opt out, and no plan that removes the requirement.

Note

This also protects you. Nobody else can create a warmer pointed at your domain, because they cannot pass the verification challenge.

Choosing a method

DNS TXT recordHTTPS file or meta tag
You need access toYour DNS providerYour site's files or templates
Typical waitMinutes to an hour, for propagationAs fast as you can deploy
Best whenYou manage DNS and want a change that survives redeploysYou deploy an app but do not control DNS
Good fit forTraditional hosting, cPanel, self-managed serversNext.js, Vercel, Netlify, static hosts

Either method results in the same verified status. Pick whichever you can do faster.

Getting the hostname right

This is the most common source of confusion, so it is worth being precise. A hostname is the exact domain part of your URLs. These are all *different* hostnames as far as verification is concerned:

text
example.com
www.example.com
shop.example.com
blog.example.com

Verify the one that appears in the entry URLs you intend to use. If your site redirects example.com to www.example.com, your entry URL should be the www version, so that is the hostname to verify.

Running several subdomains? Verify each one separately. There is no wildcard verification.

Tip

Not sure which form your site uses? Open it in a browser and look at the address bar after it finishes loading. Whatever is shown there, after any redirects, is the hostname to verify.

Method A — DNS TXT record

  1. 1

    Add the hostname

    On Account → Hostnames, type the domain and select DNS TXT record as the verification method.

  2. 2

    Start verification

    Click Start verification. Cache Rocket generates a unique token and shows you the record name and the exact value to publish.

  3. 3

    Create the record at your DNS provider

    Sign in wherever your DNS is managed — Cloudflare, your registrar, your host's control panel — and add a new TXT record using the name and value shown. Copy and paste the value; do not retype it.

  4. 4

    Wait for propagation

    DNS changes are not instant. A few minutes is typical; up to an hour is normal if your provider uses a long TTL.

  5. 5

    Click Verify

    Back in Cache Rocket, click Verify next to the hostname. If it fails, wait longer and click again — retrying is free and does not reset anything.

Checking the record yourself

If verification keeps failing, confirm the record is actually visible from the public internet before assuming Cache Rocket is at fault:

macOS and Linux
bash
dig +short TXT _cacherocket.example.com
Windows
powershell
Resolve-DnsName -Type TXT _cacherocket.example.com

Substitute the record name Cache Rocket showed you. If the command returns nothing, the record has not propagated yet or was not saved correctly.

Common DNS mistakes

Providers vary in whether they expect the full record name or just the subdomain part — entering _cacherocket.example.com where the provider already appends your domain produces _cacherocket.example.com.example.com. Also watch for quotes being added automatically, and trailing whitespace when pasting.

Method B — HTTPS file or meta tag

Choose HTTPS file or meta tag and click Start verification. Cache Rocket then shows three things: the URL it will check, the exact content that URL must return, and an equivalent <meta> tag. You need to publish either the file or the meta tag, not both.

Publishing the file

Create a file at the path shown, containing exactly the content shown and nothing else. On a Next.js project this means dropping it into your public/ directory:

Next.js, Vite, Astro, and most static hosts
text
public/
  └── .well-known/
        └── cacherocket-verification.txt

Deploy, then open the verification URL in a browser. You should see only the token. If you see your site's 404 page, styled HTML, or a redirect, it is not published correctly yet.

Or using the meta tag

If adding files is awkward, put the supplied <meta> tag in the <head> of your homepage instead. In the Next.js App Router you can add it through the metadata export:

app/layout.tsx
ts
export const metadata = {
  other: {
    'cacherocket-site-verification': 'YOUR_TOKEN_HERE',
  },
};

Deploy, then click Verify.

The file must be publicly reachable

If your site sits behind HTTP basic auth, an IP allow-list, a staging password, or a “coming soon” page, Cache Rocket cannot read the verification file. Either allow public access to that one path or use the DNS method instead.

After verification

The hostname shows Verified in your list and can immediately be used in entry URLs on both cache warmers and API warmers.

You can safely remove the TXT record or verification file afterwards, though leaving it in place is simpler — it means re-verification is instant if it is ever needed.

Removing a hostname

Removing a hostname breaks its warmers

Any warmer with entry URLs on that hostname will start failing, because its URLs no longer point at verified infrastructure. Move or delete those warmers first, or re-verify the hostname to restore them.

Verification keeps failing

I added the DNS record but verification still fails.
Almost always propagation. Confirm the record is publicly visible with the dig command above. If dig finds it but Cache Rocket does not, check for a duplicated domain suffix in the record name, or a second conflicting TXT record on the same name.
The verification file opens fine in my browser but Cache Rocket cannot read it.
Your browser may be authenticated where Cache Rocket is not. Try the URL in a private window. Also check it is served over https without a redirect, and that the response is plain text rather than an HTML page containing the token.
Which hostname do I verify if my site redirects?
The destination — the hostname that appears in the address bar after the redirect completes. That is the one your entry URLs should use.
Do I need to verify every subdomain?
Yes. Each hostname is verified independently, and there is no wildcard option. shop.example.com needs its own verification even if example.com is already verified.
Can I verify a domain I manage for a client but do not own?
Yes, provided you can add a DNS record or publish a file — that is exactly what the challenge tests. Agencies typically verify each client hostname inside that client's workspace. See Teams and roles.
Can I warm a localhost or internal-only address?
No. Cache Rocket warms from the public internet, so the hostname must be publicly resolvable and reachable.