Troubleshooting
wp-admin or wp-login shows a blank page
A blank screen means the browser received no visible content. It may be due to a hidden PHP error, but also to an empty response, a block or an incorrect redirect. The time and the log of the same request let you tell them apart.
1. Record one specific request
Open /wp-login.php once and note the time, the final URL and the HTTP code in the browser tools. Also check whether the public site works and whether WordPress has sent a recovery email to the administrator.
Check the PHP log for that moment. If you do not have one, temporarily enable the private debug log with WP_DEBUG_DISPLAY set to false; do not show PHP errors on a public website.
2. Follow the first error of the request
- If
Allowed memory size exhaustedappears, confirm the effective limit and which component was using memory before raising it. - If
Permission deniedappears, check only the path mentioned, its owner and the recommended permissions. Do not change permissions across the whole installation without that evidence. - If the error points to
wp-content/plugins/nombre-del-plugin/, update that plugin or isolate it in a reversible way. - If it points to the active theme, try a default theme on staging or through recovery mode.
The file mentioned shows where execution ended, not always what produced the invalid data. Also keep the stack trace and the first fatal error from the same time.
3. Isolate only what is needed
If you cannot log in to WordPress and the error identifies a plugin, rename only its folder via FTP or the File Manager. Repeat the same URL: the change in result is the useful evidence. Renaming the whole plugins folder also disables security, caching and e-commerce, so keep it for a controlled test.
If the log does not point to a component, run the conflict test on staging, disabling plugins in groups and temporarily switching to a default theme.
4. Verify and restore
Repeat /wp-login.php and confirm the HTTP code, the visible content and that the error no longer appears in the log. Reactivate the isolated components, restore the debug configuration and also check the public site and the website's critical features.
If the PHP log shows no failure
Check whether the response is empty or contains HTML hidden by CSS or by a JavaScript error. In the latter case, check Console and Network. If there is a chain of redirects, keep the destinations and check the configured URL, HTTPS and any plugins that change the login path.
Recovery mode may pause a component only for your session; being able to log in from its link does not prove the site is fixed for other visitors. Confirm the result from a separate session and keep SFTP or File Manager access before changing login or security components.
You may also find useful
- 404 errors on static files slow down browsing Detect missing static resources that trigger PHP and use CPU, serve them as lightweight 404s and gui...
- Debug errors in WordPress Find WordPress blank screens and internal failures by sending WP_DEBUG to a private log, without sho...
- Diagnose "Missed schedule" Check why a scheduled post was not published before replacing WP-Cron with a server task.
- Diagnose Sodium cryptographic errors in WordPress Tell a missing Sodium extension apart from an invalid argument in sodium_compat before changing the...
Something wrong or out of date? Tell us and we will review it.