Connect a Custom Domain
Enter one hostname in Settings → General (prefer www), click Set domain, add every CNAME and TXT record the dashboard lists at your DNS provider, wait a few minutes after TXT for HTTPS, then Verify until Routing and SSL show active—without a custom domain your public site stays on yoursub.artinstack.com.
A custom domain lets visitors open your published site at a hostname you own (for example www.yourbrand.com) instead of only yoursub.artinstack.com. You connect it under Settings → General → Custom Domain, then finish DNS at your registrar or DNS host. The feature requires custom domain on Settings → Subscription.
If you never set a custom domain, nothing changes for visitors: your live site and most dashboard preview links stay on your ArtInStack subdomain (yoursub.artinstack.com).
Prerequisites
- Plan includes custom domain (Settings → Subscription).
- Email verified (required before the dashboard will save a custom domain).
- Access to DNS for your domain (registrar, Cloudflare, Route 53, etc.).
- Decide the one public hostname you will enter in ArtInStack (usually
www.yourbrand.com).
What you're looking at
On Settings → General → Custom Domain:
- Hostname field and Set domain (provisions the hostname with ArtInStack).
- Status line (for example Connected or Action required (DNS changes pending)).
- Routing and SSL values from the edge provider.
- A table of CNAME and TXT records to copy into DNS.
- Verify — refreshes status after you change DNS.
www vs apex (choose one primary host)
ArtInStack stores one custom hostname per site. Enter the hostname visitors should use as the canonical address.
| Choice | Example in the dashboard | DNS notes |
|---|---|---|
| Recommended: www | www.yourbrand.com | Usually a plain CNAME to the target shown in the dashboard (for ArtInStack production that target is service.artinstack.com). |
| Apex (root) | yourbrand.com | Many DNS hosts cannot use a normal CNAME on @. You may need ALIAS, ANAME, or CNAME flattening. If your DNS is itself on Cloudflare, apex CNAMEs are flattened publicly—validation can take longer or show “does not CNAME to this zone” until ownership/TXT is satisfied. |
Only the hostname you Set domain for is provisioned for HTTPS on ArtInStack. The other host (www vs apex) will not automatically work.
Redirect the other hostname
After the primary host is Connected:
- Keep the primary host’s CNAME + TXT records exactly as the dashboard shows.
- At your DNS / CDN provider, add a 301 redirect from the unused host to the primary:
- Primary
www→ redirectyourbrand.com→https://www.yourbrand.com - Primary apex → redirect
www.yourbrand.com→https://yourbrand.com
- Primary
- If you truly need both hosts to serve the site with HTTPS through ArtInStack, that is two separate hostnames: set one in the dashboard first; ask support before treating the second as a second custom hostname (billing and DNS must both be correct).
Do not orange-cloud / reverse-proxy the customer hostname to ArtInStack in a way that keeps TLS on the wrong zone while skipping the dashboard records—that commonly produces browser 525 / SSL handshake errors on www while apex already works (or the reverse).
Implementation steps
- Confirm custom domain on Settings → Subscription.
- Open Settings → General → Custom Domain.
- Enter the hostname (prefer
www.yourbrand.com) and click Set domain. - In the DNS table, add every record shown:
- CNAME — points your hostname at ArtInStack (dashboard Target, typically
service.artinstack.com). Use DNS only / grey-cloud if your DNS is Cloudflare and the UI offers proxy vs DNS-only. - TXT — ownership and SSL certificate checks. Multiple
_acme-challenge…TXT values are normal; add each as its own TXT record.
- CNAME — points your hostname at ArtInStack (dashboard Target, typically
- Save DNS. Lower TTL ahead of time if you can (helps rollbacks).
- As soon as the TXT records listed in the table are in place, SSL certificates can be issued and deployed. Allow a few minutes after the TXT records are added before relying on HTTPS. DNS for the CNAME can still take longer to propagate worldwide (often minutes; occasionally up to 24–48 hours).
- Click Verify in ArtInStack. Status polls for about a minute after Verify.
- When status is Connected (Routing active and SSL active), open
https://+ your hostname and confirm the homepage and padlock. - Optionally add the apex↔www redirect described above.
Clearing or changing the domain
Clearing the field (or changing to a new hostname) removes the previous hostname from ArtInStack’s edge configuration and updates your settings. Re-add DNS for the new hostname if you change it. Old DNS records at the registrar are yours to delete.
Dashboard status messages
| What you see | Meaning | What to do |
|---|---|---|
| Not provisioned yet | Hostname saved locally or not fully created at the edge yet | Click Set domain again if the DNS table is empty; confirm plan and email verification |
| Action required (DNS changes pending) | Hostname exists but Routing and/or SSL are not both active, or the edge still reports a DNS problem | Add or fix CNAME + TXT from the table; wait a few minutes; Verify |
| Connected | Routing active and SSL active | You’re done for that hostname; set redirects for the other host if needed |
| Routing: — · SSL: — | No status yet from the edge | Set domain / Verify; check for an error line under the status |
| Routing: active · SSL: pending_validation | Hostname routing is recognized; certificate is waiting on domain control validation (usually the TXT / _acme-challenge records) | Confirm every TXT value matches the table; wait a few minutes; Verify again. HTTPS may fail or warn until SSL becomes active |
| SSL: pending_issuance / pending_deployment | Validation passed; certificate is being issued or rolled out | Wait a few minutes; Verify. Do not remove TXT early |
| SSL: active | HTTPS certificate is live for that hostname | Browse with https:// |
| Messages under status (for example “custom hostname does not CNAME to this zone”) | Edge still cannot validate the CNAME path to ArtInStack | Fix the CNAME/ALIAS target; on Cloudflare DNS for an apex host, prefer www or ALIAS/flattening guidance from your DNS host |
Until Connected, visitors may see connection errors, certificate warnings, or an incomplete site on the custom hostname. Your platform URL yoursub.artinstack.com continues to work for published content.
Preview links and draft content
When a custom domain is connected, dashboard Preview often opens on your custom hostname (for example https://www.yourbrand.com/?preview=true&preview_ts=…&preview_sig=…), not on yoursub.artinstack.com.
That URL is your real public hostname. It is not a separate “staging domain.”
| Who | What they see |
|---|---|
| You, with a valid signed preview link (or an owner session the product accepts on that host) | Draft / preview layout for pages and posts, with a preview banner when the product shows one |
| Ordinary visitors (no valid preview signature) | Published content only—or an access-denied screen if they hit a preview-only URL without permission |
So: preview on the custom domain does not mean drafts are public. Unsigned visitors do not get draft pages just because the hostname is yours. Always Publish when you want the world to see changes.
If you open a preview link that was generated on a different environment (for example local development) against the live custom domain, verification can fail with Access Denied—use Preview from the production dashboard.
Verifying your setup
- Subscription includes custom domain; hostname saved with Set domain.
- Every CNAME and TXT from the dashboard exists at DNS; SSL waited a few minutes after TXT.
- Status Connected (Routing and SSL active).
https://your-hostnameloads the published homepage.- Optional: apex↔www redirect works.
- Without a custom domain,
https://yoursub.artinstack.comremains the public URL.
Troubleshooting & common pitfalls
| Symptom | Likely cause | Fix |
|---|---|---|
525 / SSL handshake failed on www but apex works (or the reverse) | That host is not the one you Set domain for, or DNS proxies to the wrong origin | Use the exact dashboard hostname; add redirect for the other; fix CNAME/TXT |
| Stuck on pending_validation | TXT missing, typo, or not propagated | Re-copy TXT; wait; Verify |
| Apex “does not CNAME to this zone” | Apex CNAME flattened or unsupported | Prefer www, or ALIAS/ANAME per your DNS host |
| Preview Access Denied on the custom domain | Invalid or foreign preview signature; not signed in as owner on that flow | Open Preview from the production dashboard |
Local yoursub.localhost jumps to the real custom domain | Expected when custom domain is set: platform subdomain redirects to the canonical custom host | Clear custom domain for local-only work, or use /site/yoursub on localhost |
