The WordPress “site does not exist” message usually means a Multisite network cannot match the requested domain and path to a registered site. Start in Network Admin → Sites, then verify DNS and the web server route the hostname to the same WordPress installation. If the site is listed but still fails, check the network mode and the site’s database tables before changing records.
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
What the error actually means
In a WordPress Multisite network, every request is resolved against a site record identified by a domain and a path. WordPress looks up that pair before loading the site. If no matching record is found, core follows its ms_site_not_found path, which can stop the request or redirect it according to the network configuration. The browser-facing result is commonly a page saying that the site does not exist.
| # | Preview | Product | Price | |
|---|---|---|---|---|
| 1 |
|
WordPress For Dummies (For Dummies (Computer/Tech)) | $16.59 | Buy on Amazon |
| 2 |
|
WordPress All-in-One For Dummies | $25.40 | Buy on Amazon |
| 3 |
|
Wordpress for Dummies | $26.94 | Buy on Amazon |
| 4 |
|
WordPress Web Design For Dummies | $16.48 | Buy on Amazon |
| 5 |
|
WordPress Web Design For Dummies | $29.30 | Buy on Amazon |
As an Amazon Associate I earn from qualifying purchases.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →This is different from a normal single-site 404. A 404 means WordPress loaded and could not find a requested post or page. The Multisite message means the network may not have found a site object at all. It is also different from a database-table failure, which has its own Multisite error path.
WordPress core uses the same wording in administrative operations. wp_delete_site() returns a WP_Error with code site_not_exist and the message “Site does not exist.” when the requested site ID cannot be found. wp_update_site() performs the same existence check. In Network Admin, a missing site can appear as “The requested site does not exist.” These messages usually point to an absent, deleted, moved, or incorrectly referenced site record rather than a theme problem.
#1 Best Overall
New subdomains have an additional timing issue. During activation of a new subdomain, WordPress core notes: “During activation of a new subdomain, the requested site does not yet exist.” The site record and routing must be ready before the new hostname can serve the site.
Use this least-invasive diagnostic order
Work from the network record outward. Back up before making changes, and change one layer at a time so you know which correction solved the problem.
- Confirm the installation type. Determine whether the request reaches WordPress Multisite or a single-site installation. Domain-and-path lookup is the Multisite behavior described here. On a single-site installation, investigate the hosting virtual host, document root, site URL, and whether the request is reaching the intended WordPress files.
- Copy the exact failing URL. Record the scheme, hostname, capitalization, subdomain, and every path segment, including a trailing slash where one is present. A one-character difference can select a different domain/path pair.
- Open Network Admin → Sites. Search for the exact hostname and path. Check whether the site is active, archived, or deleted, and confirm that it belongs to the expected network.
- Test DNS resolution. Verify that the domain or subdomain resolves to the server hosting this Multisite installation. A valid WordPress site record cannot help if the hostname points to another server.
- Check the web-server alias or virtual host. The server must accept the requested hostname and route it to the same WordPress document root as the network. A DNS record alone does not configure the web server.
- Identify the network mode. Subdomain networks route by hostname; subdirectory networks route by path. Diagnose the URL pattern against the mode actually configured.
- Inspect database state only after the routing checks. If the site is listed and the hostname reaches the correct installation but the request still fails, check connectivity, table prefixes, and whether the site’s blog tables exist.
Check the site record in Network Admin
Match both domain and path
Go to Network Admin → Sites and open the site that should answer the failing URL. Compare the domain and path separately. In a subdomain network, the hostname is normally the distinguishing value. In a subdirectory network, the network hostname can stay the same while the path identifies the site. A record for example.test/arcade/ does not match arcade.example.test/, and a record for one spelling of a hostname does not match a misspelled variant.
Check the scheme assumptions as well. WordPress’s site lookup uses the configured domain and path; HTTPS versus HTTP can also expose a mismatch when redirects, proxy settings, or generated URLs are inconsistent. Preserve the original values before editing them.
Rank #2
Check status and network membership
A site can be present in the database but unavailable because it is archived, deleted, or otherwise inactive. Review its status in Network Admin and verify that it belongs to the network handling the request. If the site is absent, do not immediately create a second site with a nearly identical hostname. First check spelling, path, and network ID, then look for a verified backup containing the original record.
Create or restore the correct record
If the site was never created, add it from Network Admin using the exact domain and path required by the URL. If it was deleted or corrupted, restore the correct site record from a known-good backup rather than guessing database values. The lookup requires a matching domain/path pair; a near match is still a different site.
Free tools Windows power users keep installed
One-click scans. No signup required.
Fix DNS and web-server routing
Correct the DNS record
The failing hostname must resolve to the server that hosts the Multisite installation. Correct the relevant DNS record at the authoritative DNS provider, then allow caches to expire according to that record’s TTL. Test resolution again after the change. If the hostname still resolves to an old host, a parking service, or another application, WordPress will never receive the request for its registered site.
Configure the virtual host or server alias
After DNS points to the right server, configure that server to accept the hostname and pass it to the Multisite document root. Depending on the web server, this is a virtual-host name, server alias, or equivalent host configuration. The important requirement is that the requested hostname reaches the same WordPress files and PHP application that contain the site record.
Rank #3
A useful way to express the routing requirement is: “Either add each hostname as a site in the network (and point its DNS or server alias at this install), or switch PerfLocale to subdirectory or query URL mode, which keep this site’s hostname.” Treat this as two separate choices: register every hostname you intend to serve, or use a URL mode that keeps one hostname and identifies sites another way. Do not add a DNS record without the corresponding server route.
Retest in a controlled way
- Resolve the hostname and confirm the returned address belongs to the WordPress server.
- Request the exact URL that failed, not a shortened or redirected version.
- Check whether the response now reaches WordPress and whether the error changes. A changed error often proves that DNS or the virtual host was the missing layer.
- Clear local or proxy caches only after confirming the authoritative record and server configuration.
Diagnose subdomain and subdirectory networks differently
Subdomain Multisite
In a subdomain network, each site is identified primarily by its hostname. A request such as games.example.test requires all of the following: a matching site domain in Network Admin, DNS that resolves games.example.test to the Multisite server, and a virtual host or server alias that accepts that hostname. Missing any one of these can produce a site-not-found response.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problemsNew subdomains are especially prone to a short-lived mismatch: the hostname may resolve before the site record and activation routing are ready. Confirm that the site was created successfully, then retest the exact hostname after the network and server configuration have propagated.
Subdirectory Multisite
In a subdirectory network, sites are identified by a path on the network hostname, such as example.test/games/. A request sent to games.example.test is not equivalent; it asks for a hostname-specific site that may not exist. Correct generated links, bookmarks, reverse-proxy rules, and network settings so they use the configured path pattern.
Rank #4
When the URL pattern and mode disagree
If the network was configured for subdirectories but links or incoming requests use subdomains, decide whether the intended design is actually a subdomain network. Correct the generated URLs and network settings to match the existing mode, or plan a deliberate migration. Do not solve an isolated error by adding random aliases; that can leave the network with duplicate or conflicting site records.
Investigate missing blog tables and database state
A site can be correctly registered and routed yet fail because its database tables are missing. WordPress has a separate ms_not_installed() path for missing blog tables. The documented causes include a database server that is not running, an incomplete WordPress installation, or tables that someone deleted.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Check connectivity and prefixes first
- Confirm that the database server is running and reachable by the WordPress installation.
- Verify the table prefix in the configuration matches the prefix used by the network’s tables.
- Check whether the tables for the affected site actually exist. Multisite sites commonly use a site-specific table-number pattern derived from the network’s blog ID.
- Look for evidence of a recent migration, restore, or manual cleanup that could have omitted the site’s tables.
Do not create replacement tables by guesswork. If tables are absent, restore them from a known-good backup or involve the host or database administrator. A database repair can affect posts, users, options, and network metadata; it is higher risk than correcting a DNS record or a site status.
Recover a deleted site or invalid site ID
The administrative functions wp_delete_site() and wp_update_site() both verify that the requested site object exists. A site_not_exist error means the supplied ID cannot be found, not that a plugin merely failed to display the site.
Best Value
Verify the ID and network
Use Network Admin to locate the site by domain and path rather than relying on an old numeric ID. Confirm that it has not been moved to another network, removed during a migration, or referenced by stale automation. If an integration stores site IDs, update it only after confirming the current record.
Restore deliberately
If the site was deleted, restore the site record and its associated tables from the same verified backup set whenever possible. Restoring only the record can produce a site that routes correctly but has no content; restoring only tables can leave WordPress unable to resolve the domain and path. Record what was restored and test the exact URL before making additional changes.
Use a risk-based fix matrix
| Failure layer | Typical symptom | First action | Relative risk |
|---|---|---|---|
| Site registration | Hostname or path is absent, misspelled, inactive, or attached to another network | Check Network Admin → Sites and correct or restore the matching domain/path record | Lower when changed through Network Admin; back up before restoring records |
| DNS | Hostname resolves to another server or does not resolve to the Multisite host | Correct the DNS record and wait for its TTL-based cache expiry | Reversible configuration change |
| Web-server routing | DNS is correct, but the server does not accept the hostname or routes it to another document root | Add or correct the virtual host or server alias | Reversible configuration change, but a bad alias can affect other sites |
| Network mode | Requests use subdomains while the network expects paths, or the reverse | Align generated URLs and requests with the configured subdomain or subdirectory mode | Potentially broad; plan migrations rather than ad hoc edits |
| Database tables | Site is registered and routed, but blog tables are missing or the database is unreachable | Check connectivity, prefixes, and table existence; restore from backup if needed | Highest risk; involve a database administrator for repairs |
A complete recovery workflow
- Preserve evidence. Save the failing URL, the current Network Admin values, DNS answers, server configuration, and relevant error messages. Export the database and back up WordPress files before editing settings or rows.
- Establish the installation boundary. Confirm whether the request reaches this Multisite installation. If it reaches a different application, fix DNS or the virtual host before changing WordPress.
- Match the site. In Network Admin → Sites, compare the exact hostname and path. Check active, archived, and deleted states and confirm the network identity.
- Correct the smallest layer. Fix a spelling or status in Network Admin, a DNS record at the DNS provider, or a server alias in the virtual-host configuration. Make only one class of change at a time.
- Retest the unchanged URL. Keep the scheme, hostname, path, and trailing slash the same so the result is comparable.
- Escalate to database checks. Only when registration and routing are correct, verify database connectivity, prefixes, and site-specific tables.
- Restore as a matched set. If records or tables were deleted, use a verified backup and document the original and restored values.
- Validate related sites. After a network or server change, test another known-good site so a fix for one hostname has not broken the rest of the network.
Common mistakes that make the error worse
- Creating a duplicate site immediately. A near-identical hostname or path can hide the original spelling mistake and create two competing records.
- Editing database rows before backing up. A manual domain, path, or ID change can sever links between network metadata and blog tables.
- Changing URL mode casually. Switching between subdomains and subdirectories affects generated links, server routing, cookies, and every site in the network.
- Assuming DNS proves WordPress is configured. DNS only selects an IP address; the web server still has to accept the hostname and route it to the correct document root.
- Assuming a database error is a site-registration error. A listed site with missing tables needs database investigation, not another Network Admin record.
- Testing a different URL after every change. Always retest the original failing hostname and path first; otherwise redirects can make a partial fix look complete.
When a single-site installation shows the same wording
The domain/path lookup explanation applies to WordPress Multisite. If the installation is single-site, begin outside the Multisite site list: confirm the hosting virtual host, document root, configured site URL, and DNS destination. Make sure the request is reaching the intended WordPress installation rather than an empty directory, a default server, or another application. Once the request reaches the correct single-site files, investigate that installation’s own configuration and database errors separately.
What to hand a host or administrator
If you need help, provide the exact failing URL, whether the network uses subdomains or subdirectories, the matching Network Admin site record, the DNS result, and the server hostname or virtual-host configuration. Include whether the site is active, archived, or deleted and whether its blog tables exist. This lets an administrator identify whether the failure is at registration, DNS, server routing, network mode, or database level without asking you to repeat destructive changes.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




