MagicWP Docs

Domain

Connect your own domain to a MagicWP site

Every MagicWP site comes with a free default domain and can also serve your own custom domain - with HTTPS handled automatically. You manage domains in the dashboard: your site → Domain.

Your default domain

When a site is created, MagicWP gives it a default subdomain like your-site.magicwp.net (the exact one is shown at the top of the Domain page). It's live immediately, always connected, and served over HTTPS - useful for building and testing before you point a custom domain at the site.

Two ways to connect a domain

The Domain page offers two routes, and you pick one:

Connect CloudflarePoint a domain manually
Where your DNS livesCloudflareAny registrar
Who writes the recordsMagicWPYou
Setup timeAbout a minuteHowever long DNS takes to propagate
You also getProxy, WAF, edge cache purge, SSL mode and dev mode from the dashboardSSL and platform caching

A domain can only be set up one way at a time. Once you start on one route the other is disabled until you remove the domain - two sets of records pointing at the same name is a problem, not a fallback.

Connect Cloudflare (OAuth2)

If your domain's DNS is already on Cloudflare, this is the shorter path. There is no API token to create or paste.

1. Sign in at Cloudflare

Click Continue with Cloudflare. The page lists the permissions MagicWP will ask for before you go, and Cloudflare shows you the same list on its own consent screen. Approving takes you back to the dashboard.

Permissions are account-wide

Cloudflare grants access at the account level, not per domain. Approving DNS access covers every zone in that Cloudflare account, not only the one you are about to connect. You can revoke it at any time - from MagicWP, or in Cloudflare under My Profile → Access Management → Connected Applications.

2. Enter the domain

Type the domain you want to use - the apex (example.com) or a subdomain (blog.example.com). It must already be in the Cloudflare account you just connected.

MagicWP writes two records into your zone: a CNAME pointing the name at your default domain, and a TXT record that proves ownership.

If the name already has records

If something is already at that name - an old A record from a previous host, for example - MagicWP will tell you and offer to replace it. That deletes the existing A, AAAA or CNAME record at that name, so only accept if you no longer need it.

3. Connect it

Click Connect. MagicWP points the web server at the domain and issues its certificate.

The record is written grey-cloud (proxy off) to begin with, and the proxy becomes available once the certificate exists. That order matters: turning the Cloudflare proxy on before the certificate is issued puts Cloudflare's default Flexible SSL in front of a server that redirects to HTTPS, which is a redirect loop.

Cloudflare settings

Once connected, the Domain page also gives you:

  • Cloudflare proxy - serve the site through Cloudflare's cache and WAF.
  • SSL mode - use Full (strict). It's the only mode that won't fight this server's HTTPS redirect while the proxy is on.
  • Always Use HTTPS - redirect HTTP at the edge, before it reaches the site.
  • Development mode - bypass the Cloudflare cache while you work. Cloudflare turns it off again after three hours.
  • Purge cache - clear everything Cloudflare is holding for the zone.

Point a domain manually

Use this if your DNS is anywhere else, or if you'd rather not grant access to your Cloudflare account.

1. Add the domain

Enter it on the Domain page and click Add.

2. Add two records at your registrar

MagicWP shows you exactly what to add. Both are required - the CNAME points the name at your site, the TXT proves you own it:

TypeNameValue
CNAME@ for the root domain, or the subdomain (e.g. www, blog)your default domain, e.g. your-site.magicwp.net
TXT_magicwp (or _magicwp.<subdomain>)the verification string shown on the page

Click any name or value to copy it.

Root domains

Many registrars can't put a CNAME on a root/apex domain (example.com) - use their CNAME flattening / ALIAS / ANAME feature, or point a subdomain like www instead.

3. Wait for verification, then connect

MagicWP re-checks DNS automatically while the page is open, and Check now forces a check. When both records are found the domain becomes Verified and Connect becomes available.

DNS takes time to propagate

DNS changes can take anywhere from a few minutes up to 24-48 hours to propagate worldwide. Leave the page open, or come back later - nothing is lost while you wait.

Managing your domain

Each domain shows its state:

  • Waiting for DNS: added, but the records haven't been found yet.
  • Verified: DNS is correct; ready to connect.
  • Connected: active; your site is served on this domain.

The actions, in the order they have to happen:

  • Connect - make the domain the site's live address.
  • Disconnect - stop serving it; the site falls back to its default *.magicwp.net address. Everything else stays set up, so you can connect again whenever you like.
  • Remove - take the domain off the site. On the Cloudflare route this also deletes the two records MagicWP wrote; on the manual route your registrar records are left alone for you to delete. Disconnect first.
  • Revoke access (Cloudflare only) - hand back MagicWP's access to your Cloudflare account. Remove the domain first, or its records would be left in a zone MagicWP can no longer reach to tidy up.

SSL certificates

HTTPS is automatic. When you connect a domain, MagicWP issues and installs a free Let's Encrypt certificate and renews it for you - there's nothing to buy, upload, or configure. Your default *.magicwp.net domain is always HTTPS too.

Troubleshooting

SymptomLikely causeFix
"is not in the Cloudflare account you connected"The domain is in a different Cloudflare account, or not on Cloudflare at allAdd it to that account, connect a different one, or use the manual route
"already has DNS records in this zone"An old A or CNAME is still at that nameAccept the offer to replace it, or delete it in Cloudflare first
"already registered to another site"The domain is connected to a different MagicWP siteRemove it there first
Added but still Waiting for DNSStill propagating, or a record is wrongCheck both the CNAME and the TXT match exactly; use Check now after propagation
Root domain won't verifyRegistrar can't CNAME the apexUse CNAME flattening / ALIAS / ANAME, or connect a www subdomain
Redirect loop after turning the proxy onCloudflare SSL mode is FlexibleSet SSL mode to Full (strict)
Can't remove the domainIt's still connectedDisconnect it first
Can't revoke Cloudflare accessA domain is still set up through itDisconnect, then remove the domain, then revoke
Certificate warning in the browserCert still being issued right after connectingGive it a minute after connecting, then reload

On this page