How to host a Ghost.io blog on a custom domain

Per the ghost.io website, there are two ways to set the DNS for your custom domain so that it works with a ghost.io hosted blog.

The first way they suggest is using a CNAME record to point a subdomain to .ghost.io.

Record Name Target
CNAME blog <yourblogname>.ghost.io

The above would redirect blog.<yourblogname>.com to <yourblogname>.ghost.io.

But what if you want your root domain to point to your ghost.io hosted blog, you'll have to do the following:

Record Name Target
CNAME @ <yourblogname>.ghost.io

(In DNS, the @ sign represents your root domain.)

The problem is, most DNS providers DON'T allow a CNAME record to point to root (@). Instead, they require the root to point to an IP address.

Cloudflare is one DNS provider that DOES allow a CNAME root.

Record Name Target
CNAME @ <yourblogname>.ghost.io
CNAME www @

Now both <yourblogname>.com and www.<yourblogname>.com will work.