Site dashboard icon sends me to the login page
Short answer: the dashboard login icon uses a signed token that expires after 30 minutes, so first refresh Tenancy > All Tenants and click the link again. If a fresh link still redirects to wp-login.php?grabwp_token_error=1 on a host with object caching (for example xCloud), update GrabWP Tenancy to 1.1.15 or later. On older versions, switch site isolation to Advanced or Custom under Tenancy > Pro Settings > Isolation.
Needs: Free
Symptom
Clicking the dashboard icon to log in to a client site sends your browser to the site login screen with ?grabwp_token_error=1 in the URL instead of logging you in to wp-admin.
In the GrabWP log, one of these three messages is recorded:
Invalid or expired admin access token.Tenant identification failed.No admin user found for tenant access.
Cause
| If you see | It means |
|---|---|
Invalid or expired admin access token. | The grabwp_token URL was generated more than 30 minutes ago (1800 seconds, unless GRABWP_TENANCY_TOKEN_TTL is set), or the signature did not match. |
Tenant identification failed. | WordPress opened the request without resolving a site ID, usually because the load.php block in wp-config.php or the routing rule did not match the URL. |
No admin user found for tenant access. | GrabWP connected to the site database, but no administrator account was found in the site's user table. |
Redirect to wp-login.php?grabwp_token_error=1 on a new site when Tenancy > Status is all green | Before Base 1.1.15, on some hosts with object caching (such as the xSpeed drop-in on xCloud), a shared object-cache.php drop-in shared cached options and users across sites that share wp-content, which prevented the new site tables from initializing cleanly. From Base 1.1.15, a client site keeps the shared drop-in only when its cache keys stay separate (xSpeed with a per-site salt, Redis Object Cache with the site's own table prefix). |
Check
- Go to Tenancy > All Tenants, reload the page in your browser, and click the site dashboard icon right away to rule out an expired 30 minute token.
- Open Tenancy > Status and verify that 1. wp-config.php Loader shows Active and 2. MU-Plugin shows Installed.
- If GrabWP Pro is active, go to Tenancy > Pro Settings > Isolation and check what Level of isolation for new sites is selected.
- Check whether your hosting environment places a shared
object-cache.phpfile inwp-content.
Fix
If the token expired
Reload Tenancy > All Tenants (or Waas > Subscriptions) so WordPress generates a fresh grabwp_token and grabwp_hash link, then click the dashboard icon within 30 minutes.
If you forgot the site admin password
If you need to log in directly through wp-login.php without using the dashboard token link, use Lost your password? on that site's login screen (https://your-site-domain/wp-login.php).
If your host uses a shared object cache
When using a host with object caching where shared wp-content causes new sites to fail auto-login:
- Update GrabWP Tenancy to 1.1.15 or later on the main site. This fixes the cause for sites that share the main site's
object-cache.php. - Create a new test site and confirm direct login works.
- If you cannot update yet, go to Tenancy > Pro Settings and open the Isolation tab, change Level of isolation for new sites from Simple or Shared to Advanced (or choose Custom with isolated directories), and save.
- For sites created while affected, open the site URL directly and complete the WordPress installer if prompted, or recreate the site.
:::info If you sell sites When selling sites with WaaS, customers can log in to their dashboard via one-time email code under WAAS Auth (Email signup) mode, or via standard credentials under WordPress Auth (Login required) mode. See Set up WaaS. :::
Still stuck
If refreshing the site list, updating GrabWP and isolating wp-content do not resolve the redirect, click Copy diagnostics under Support diagnostics on Tenancy > Status and send it with the exact URL parameters shown on the login screen. See What to send when you ask for help.