CNAME setup: a CDN in front of one hostname, DNS where it is
The CDN edge-worker pattern on the solution architecture page assumes a CDN you can configure sits in front of the site. When there is none, and your organisation keeps DNS centralised with a provider it will not change, a CNAME setup adds one without moving the zone. This page is what that involves on Cloudflare and on Fastly, what each costs, and when the in-application pattern is the better answer.
Two ways to put a CDN in front of a site
A CDN serves a hostname only if DNS sends that hostname’s traffic to it. There are two ways to arrange that, and they differ in who controls DNS afterwards.
You change the domain’s nameservers at the registrar to the CDN’s. The CDN then answers DNS for the whole domain, every record is managed there, and any hostname can be proxied with a switch. This is the default on Cloudflare and the route on Set up Cloudflare from scratch. It works on the free plan. Its cost is organisational: DNS control moves, and the email and verification records must be carried across exactly.
Your DNS provider stays authoritative. For each hostname you want fronted, usually just www, you change its record to a CNAME pointing at the CDN, and the CDN proxies that hostname only. Nothing else in the zone is touched. On Cloudflare this is a Business-plan feature; on Fastly it is the only model there is.
Cloudflare CNAME setup
Cloudflare calls this a partial setup. The zone exists in Cloudflare, but only the hostnames you CNAME across are served by it, and your DNS provider stays authoritative.
CNAME setup is available only on the Business and Enterprise plans. Business is US$200 a month billed annually, or US$250 a month billed monthly, charged per domain. For a site adopting Cloudflare only to run the NORG worker, that cost is usually the deciding factor against this route; the alternatives are at the end of this page. Cloudflare-registered domains cannot use CNAME setup.
- Add the domain to a Cloudflare account on the Business or Enterprise plan. Ignore the instruction to change nameservers.
- On the zone’s Overview page choose Convert to CNAME DNS Setup, and save the Verification TXT Record it shows.
- At your DNS provider add that TXT record (name cloudflare-verify, under your domain). Cloudflare confirms by email, usually within hours. The record must stay in place for as long as the zone is on CNAME setup.
- In Cloudflare DNS create a proxied record for each hostname to front (for example www, pointing at your host as today). At your DNS provider replace that hostname’s existing record with a CNAME to {hostname}.cdn.cloudflare.net, for example www.example.com CNAME www.example.com.cdn.cloudflare.net.
- Wait for the Universal SSL certificate for that hostname, then deploy the NORG worker and attach its route to the fronted hostname as on the Cloudflare Worker install page.
A CNAME is not allowed at the zone apex (example.com), so the apex can only be fronted if your DNS provider offers CNAME flattening (sometimes called ALIAS or ANAME). Otherwise leave the apex pointed at your host and have the host redirect it to www, which most already do. AI agents follow that redirect like any client, so the worker on www still sees them.
- DNS-level DDoS protection does not apply: Cloudflare is not answering your DNS.
- Cloudflare documents that on a partial zone a Worker can only fetch hostnames that have a record in Cloudflare DNS; a hostname without one fails with a 530. The fronted hostname has its record from the steps above. The install’s verification step confirms that the worker’s fetches to your origin and to the two NORG hosts succeed before anything is served.
- Universal SSL is issued per proxied hostname once its CNAME resolves. A site sensitive to a certificate gap can pre-issue an advanced certificate with delegated validation instead.
- The verification TXT record is permanent while the zone is on CNAME setup.
Worker deployment, token permissions and verification are unchanged from a full-setup zone: Cloudflare Worker install. A fresh full-setup zone is walked through on Set up Cloudflare from scratch.
Fastly CNAME setup
Fastly provides no DNS service, so every Fastly install is a CNAME setup: your DNS provider stays authoritative and one record per hostname points at Fastly. There is no plan gate; billing is by usage with a free allowance.
- Create the Fastly service for the hostname, with your current host as its origin. NORG’s Fastly adapter is a Compute service and is provisioned with your Site ID and Site Key.
- Create a Fastly-managed TLS subscription for the hostname. Fastly shows a CNAME record for domain verification; add it at your DNS provider and wait for the subscription to activate.
- The TLS configuration then shows the CNAME host for the hostname, for example dualstack.e.sni.global.fastly.net. At your DNS provider replace the hostname’s existing record with a CNAME to that host.
- Verify, as on the white paper: a browser request returns your site unchanged, a simulated agent request returns the mirror.
For the apex Fastly supplies anycast IPv4 and IPv6 addresses, shown beside the CNAME host on the TLS configuration, to use as A and AAAA records. Fastly advises against ALIAS-style flattening. As with Cloudflare, a host-side redirect from the apex to www is the simplest arrangement.
- Full-site delivery. 100 GB bandwidth and 1 million requests free; then from US$0.12 per GB and US$0.01 per 10,000 requests, by region.
- Compute. 10 million requests and 100 million vCPU-milliseconds free; usage-billed beyond that.
- TLS. Five domains free on Fastly-managed TLS or Certainly; US$20 per domain per month beyond that.
Once www is CNAMEd to Fastly, all of that hostname’s traffic flows through it, not only AI agents, so bandwidth is billed on the whole site. For most small and medium business sites the free allowance covers it; a high-traffic site should estimate from its own analytics before agreeing.
- Fastly becomes a new service in your estate with its own account, billing and access controls, added for this purpose alone unless you planned to adopt a CDN anyway.
- The NORG Fastly adapter’s own bounds (its 5-second budget and the MCP path going to your origin rather than being relayed) are on the white paper’s CDN comparison.
- TLS at the edge is a Fastly-managed subscription; your host’s existing certificate keeps serving the origin behind it.
Adapter details and the per-CDN comparison: white paper, Your CDN.
Side by side
| Full zone move (nameservers) | CNAME setup (one hostname) | |
|---|---|---|
| Who answers DNS for the domain | Cloudflare’s nameservers. Every record (web, MX, SPF, DKIM, verification) is imported and then managed in Cloudflare. | Your existing DNS provider, unchanged. You add one CNAME per hostname you want fronted, plus a verification record. |
| What passes through the CDN | Every proxied hostname in the zone, as you choose per record. | Only the hostnames you CNAME, typically www. The apex needs a redirect or flattening (below). |
| Email and other records | Must be carried across exactly. The risk is a missed or mistyped record during the move. | Never touched. There is nothing to carry across. |
| Cloudflare plan required | Free is sufficient for the NORG worker. | Business or Enterprise. Business is US$200 a month billed annually, or US$250 a month billed monthly, per domain. |
| Fastly equivalent | Not applicable: Fastly never takes over DNS. | The only Fastly model. Usage-billed with a free allowance; no plan gate. |
| TLS at the edge | Universal SSL for the apex and first-level subdomains, automatically. | Cloudflare: one Universal certificate per proxied hostname, issued once the CNAME is in place. Fastly: a managed TLS subscription validated by a CNAME at your DNS. |
| Rollback | Repoint nameservers back. Takes effect as resolvers expire the delegation; typically hours. | Change the one CNAME back to its previous target. Takes effect within that record’s TTL; typically minutes. |
| Other things you gain or lose | DNS-level DDoS protection, DNSSEC and DNS analytics come with Cloudflare answering DNS. | None of the DNS-level features; the HTTP-level ones (caching, WAF, bot rules, Workers) apply to the fronted hostnames. |
Choosing, and the alternative
Introducing a CDN for the NORG worker alone is rarely the smallest change available.
Use it. The worker goes on the existing zone or distribution and no DNS change is needed at all; see the integration patterns on the solution architecture page.
Cloudflare CNAME setup works but carries the Business plan cost. Fastly CNAME setup is inexpensive but adds a service to run. In either case all of www’s traffic now flows through a new party. For a WordPress site the in-application pattern avoids all three: the plugin runs inside the existing host, with one rule on WP Engine or the equivalent cache bypass elsewhere, and DNS is not involved. For a Vercel site the middleware does the same.
The NORG-hosted mirror serves the same pages from a hostname NORG runs; see hosting options.
