Skip to content

What DNSPeek previews can’t do

DNSPeek sits between the visitor and your new server, so almost everything a normal visit does works in a preview. This page is the short list of what doesn’t, and what to do about it. The full article is in the docs: Limitations and known issues.

1.What works

  • HTML pages, stylesheets and scripts, with links to your domain rewritten to the preview.
  • Redirects, including redirects between your domain and its www version.
  • Cookies and logins: cookies your server sets stay on that preview link’s own address.
  • Forms and file uploads up to 64 MB per request.
  • WebSockets and Server-Sent Events, for live chat, dashboards and progress updates.
  • Compressed responses (gzip and Brotli).
  • HTTP Basic Auth prompts from your server, which reach the visitor unchanged.

2.Bot protection and firewalls

Anti-bot services and web application firewalls on the new server, for example a Cloudflare challenge or a security plugin, may treat traffic from DNSPeek as automated. The preview then shows a challenge page or an error instead of your site.

Requests from DNSPeek carry an X-DNSPeek-Proxy: 1 header. If you control the firewall, relax the rule for the duration of the migration, or pause the protection while you test.

3.Sites behind a CDN

If your domain is proxied through a CDN such as Cloudflare, looking it up returns the CDN’s addresses, not your server. A preview needs the origin IP of the new server from your hosting provider. See Find your server IP.

4.Files and links on other hostnames

DNSPeek rewrites links that point at the domain of the link. Unless the link includes subdomains (below), absolute URLs on other hostnames, such as cdn.example.com or static.example.com, are left alone: the browser loads them from wherever public DNS points today, usually the old server or your CDN. On the Free plan one link covers one hostname, so a site spread over several subdomains needs a link for each.

On paid plans, turn on Include subdomains and one link also previews every subdomain of the site, which suits a WordPress multisite: shop.example.com opens at shop---alias on the preview domain, and links between the subdomains stay inside the preview. Hosts outside the site, such as a third-party CDN, are still loaded from the internet. Each subdomain keeps its own cookies, so a login shared across subdomains has to be repeated on each one. See WordPress multisite and subdomains.

JavaScript that builds URLs at runtime is rewritten conservatively, so a single-page app that assembles its own API addresses may still call the live site. A QA report flags broken files and hard-coded URLs that point at temporary hosts or raw IPs.

5.Third-party sign-in and payments

Services outside your server only know your real domain, and public DNS still points it at the old server until you switch:

  • Sign in with Google, Microsoft or SSO sends the visitor back to the callback address registered for your real domain, so the visitor ends up on the live site rather than the preview.
  • Hosted payment pages return to your real domain the same way, and payment webhooks keep going to the old server until DNS moves.

Anything visitors do on the preview, like signing in, submitting a form or placing an order, really happens on the new server. Use test accounts, and check sign-in and checkout again right after the switch.

6.Security headers differ in the preview

To make pages work on the preview address, DNSPeek removes your server’s Strict-Transport-Security, Content-Security-Policy and X-Frame-Options headers and marks cookies SameSite=None; Secure. Check those headers on the real domain after the switch, not in the preview.

7.Addresses that cannot be previewed

Private network ranges (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) and loopback addresses are blocked, so a preview cannot reach machines inside a private network. The dashboard accepts IPv4 addresses.

8.Link expiry and access

  • Links on the Free plan expire 7 days after they are created. Paid plans can keep links without an expiry date.
  • An expired link says so; a link its owner disabled says that instead.
  • A password-protected link asks for the password before showing the site, then remembers the browser for 24 hours.
  • If most recent requests to the new server fail, DNSPeek briefly answers with a 503 instead of waiting on every request. Fix the server and reload after a short pause.

9.A preview is not a production host

Previews are meant for testing and review before the DNS switch. Anyone with the link can open it, so use a password for anything sensitive and disable links you no longer need. How we handle your data is on the trust page.