localwebadvisor
WIKI← Wiki home

What Is a 500 Internal Server Error?

By FayUpdated Jul 10, 2026EVERGREEN
⚡ THE ANSWER

A 500 Internal Server Error is a generic HTTP status code meaning the web server hit an unexpected problem and could not complete the request, but cannot say exactly what went wrong. It is a catch-all for server-side faults - a code bug, a broken plugin, a misconfiguration, or an exhausted resource - not a problem with the visitor's browser. Visitors see a blank or error page instead of your content. The real cause almost always lives in the server logs, which is where diagnosis begins.

Status class
A 5xx code: the server, not the browser, is at fault (MDN Web Docs)
Meaning
An unexpected server-side condition prevented fulfilling the request (RFC 9110)
Generic by design
It hides the specific cause; server logs reveal the real error
Common causes
Code bugs, bad plugins/themes, .htaccess errors, permissions, or memory limits
Not the visitor
Nothing the user does fixes it; the site owner must resolve it
SEO risk
Persistent 500s can hurt crawling and rankings if left unresolved (Google Search Central)

What a 500 error actually means #

A 500 Internal Server Error is the web's way of saying 'something broke on our end, and we do not know exactly what.' When a browser requests a page, the server tries to build and return it; if it encounters an unexpected fault it cannot handle, it gives up and returns HTTP status 500 instead of your content. The key word is generic - 500 is a catch-all that deliberately hides the specifics, so on its own it tells you only that the failure is server-side, not in the visitor's browser or connection. That distinction matters: no amount of refreshing or clearing cookies on the visitor's part will fix it, because the problem lives on the server. Causes range from a coding bug to a broken plugin, a bad configuration file, wrong file permissions, or an exhausted resource like memory. Because it is so vague, resolving a 500 always starts with the server logs, and for anything persistent it is a job for /services/website-rescue or your /services/managed-hosting provider rather than trial-and-error.

How a 500 differs from other status codes #

HTTP status codes are grouped by their first digit, and understanding the groups clarifies what a 500 is not. Codes in the 2xx range mean success, 3xx mean redirection, and 4xx mean the client erred - the famous 404 Not Found says the browser asked for something that is not there. The 5xx range, which includes 500, means the server itself failed while trying to fulfil a valid request (MDN Web Docs). So a 500 is fundamentally different from a 404: with a 404 the request was fine but the resource is missing, while with a 500 the request was fine but the server choked processing it. Within the 5xx family, 500 is the most generic; its cousins 502, 503, and 504 point to more specific gateway and availability problems. Knowing you are in 5xx territory immediately tells you to look at the server, application, or hosting stack, not the URL or the user. When 500s appear alongside slowness, a /services/speed-optimization review can reveal whether resource limits are the trigger.

Common causes on real websites #

Although 500 is generic, a handful of causes account for most real-world cases. A bug or fatal error in the site's code - a bad function call, a syntax error after an edit, or an unhandled exception - is the classic trigger. On platforms like WordPress, a poorly written or incompatible plugin or theme is a frequent culprit, especially right after an update. Server configuration files are another common source: a mistake in an .htaccess file, a broken rewrite rule, or an invalid directive can take a whole site down with a 500. Incorrect file or folder permissions can stop the server executing scripts. Resource exhaustion also produces 500s or related errors - running out of PHP memory, hitting a process limit, or overloading the database. Occasionally an expired or misconfigured integration or a corrupted file is to blame. Because so many roots exist, guessing wastes time; the logs narrow it down fast. If your site sits on shared hosting, some limits are set by the host, which is where /services/managed-hosting choices matter.

How to read the error in server logs #

Since a 500 hides its cause from visitors, the fix begins with the server's error log, where the real message is recorded. On most hosts you can view logs through the control panel, or over SSH by tailing the web server or PHP error log. The commands below show typical locations for Apache, Nginx, and PHP on a Linux server; the exact paths vary by host and stack. The log entry usually names the file and line where the failure occurred and gives a specific message - a fatal PHP error, a permissions denial, or a memory-limit message - which turns a vague 500 into an actionable bug. On WordPress you can also enable debug logging to capture PHP errors to a file. If you do not have log access, your /services/managed-hosting provider can pull them for you. Never leave verbose errors displayed publicly on a live site, as they can leak sensitive paths and details; log them privately instead and show visitors a clean error page.

Example
# Apache error log
tail -n 50 /var/log/apache2/error.log

# Nginx error log
tail -n 50 /var/log/nginx/error.log

# PHP-FPM errors
tail -n 50 /var/log/php-fpm/error.log

# WordPress: enable debug logging in wp-config.php
# define('WP_DEBUG', true);
# define('WP_DEBUG_LOG', true);  // writes to wp-content/debug.log

First fixes for site owners #

When a 500 strikes, a calm checklist beats panic. First, confirm it is site-wide or page-specific and note what changed just before it started - a plugin update, a code edit, a new configuration - because the most recent change is the usual suspect. Reverting that change often restores the site immediately. Check the server error log for the specific message, which usually points straight to the file and line at fault. Common quick fixes include correcting or temporarily renaming a broken .htaccess file, fixing file permissions to standard values, and raising the PHP memory limit if the log shows exhaustion. On a CMS, deactivating the most recently updated plugin or switching to a default theme isolates the culprit. Always work on a backup or staging copy where possible so you can undo mistakes. If the error persists or the logs are unclear, escalate rather than guessing endlessly - a persistent 500 on a live site is losing you visitors and sales. Our /services/website-rescue team handles exactly these emergencies, restoring the site and finding the root cause.

WordPress-specific triggers and fixes #

Because WordPress powers a large share of the web, its 500 errors are worth calling out. The most common WordPress triggers are a plugin or theme conflict, a corrupted .htaccess file, an exhausted PHP memory limit, or a broken core file after a failed update. The standard diagnostic sequence is: enable debug logging to capture the real error, then deactivate all plugins - via the dashboard or by renaming the plugins folder over FTP if you are locked out - and reactivate them one by one to find the offender. Switching temporarily to a default theme like Twenty Twenty-Four tests for theme faults. Regenerating the .htaccess file by resaving permalinks fixes rewrite issues, and increasing the memory limit in wp-config.php resolves memory-related 500s. If a core update failed, re-uploading fresh WordPress files often helps. Always back up first. Ongoing WordPress maintenance through /services/wordpress-development and a /services/care-plans subscription prevents many of these by keeping plugins, themes, and core compatible and tested before updates hit your live site.

SEO and user-experience impact #

A 500 error is more than an inconvenience; left unresolved it damages both users and search rankings. For visitors, a 500 means a broken, blank, or unbranded error page instead of your content, which erodes trust and sends potential customers to competitors - especially painful on a checkout or contact page. For SEO, search engines treat persistent 5xx errors as a signal that your site is unreliable. If Googlebot repeatedly hits 500s, it may slow crawling, drop affected pages from the index over time, and lose ranking, as outlined in Google's guidance (Google Search Central). Occasional, quickly fixed 500s are usually harmless, but recurring ones are a real risk. Serving a proper error page with the correct 500 status, rather than a soft error returning 200, helps search engines understand the situation. Monitoring uptime and error rates lets you catch problems before they compound; a tool like /tools/website-down-checker can confirm whether your site is returning errors right now. Treat sustained 500s as an emergency, because every hour of downtime costs traffic, revenue, and trust.

Preventing 500 errors and what we advise #

Most 500 errors are preventable with a few disciplines. Test changes on a staging site before pushing them live, so a bad plugin, edit, or configuration never reaches real visitors. Keep code, plugins, and themes updated and compatible, and take a backup before every significant change so you can roll back in seconds. Set sensible resource limits and monitor memory and process usage, upgrading hosting before you consistently hit ceilings - a decision where quality /services/managed-hosting pays off. Enable private error logging and uptime monitoring so you learn about failures before customers do. For businesses without in-house technical staff, a /services/care-plans subscription covers updates, backups, monitoring, and rapid fixes, turning 500 emergencies into routine, prevented events. When a 500 does occur, resist random changes: read the log, undo the last change, and escalate if unclear. If your site is down with a 500 right now and you are stuck, /services/website-rescue exists for exactly that moment. Prevention is cheaper than emergency recovery, and a stable server is the foundation of every other result your site delivers.

FAQ

Is a 500 error my fault or the visitor's?

It is a server-side problem, so it is on your side, not the visitor's. Nothing they do - refreshing, clearing cookies, switching browsers - will fix a true 500. The fault lies in your site's code, plugins, configuration, permissions, or server resources, and only the site owner or host can resolve it.

How do I find what caused a 500 error?

Check the server error log, available through your hosting control panel or over SSH. The log names the file, line, and specific message behind the generic 500 - a fatal code error, a permissions denial, or a memory limit. That message turns a vague 500 into an actionable fix. Note what changed just before it started.

Can a 500 error hurt my Google ranking?

Occasional, quickly fixed 500s are usually harmless, but persistent ones are a risk. If search engines repeatedly hit 5xx errors, they may crawl less, drop pages from the index, and lower rankings. Serve a proper 500 status, fix the cause fast, and monitor uptime so recurring errors do not compound into lost visibility.

Why does a 500 error appear after installing a plugin?

Because the new or updated plugin likely has a bug or conflicts with your theme, other plugins, or PHP version, causing a fatal server-side error. Deactivate the plugin - through the dashboard or by renaming its folder over FTP if you are locked out - to confirm, then update, replace, or remove it.

What is the difference between a 500 and a 404 error?

A 404 means the page you requested does not exist; the request was fine but the resource is missing. A 500 means the server failed while processing a valid request. A 404 is a client-facing 'not found,' while a 500 is a server-side breakdown that needs fixing on your end.

How can I prevent 500 errors?

Test changes on staging before going live, keep plugins, themes, and code updated and compatible, and back up before every major change. Set adequate server resources, enable error logging and uptime monitoring, and consider a care plan that handles updates and fixes. Prevention through good hosting and maintenance beats emergency recovery every time.

How Local Web Advisor checks this for you

Is your own website getting web tech right?

Our free AI audit scans your site and tells you — in plain English — exactly what to fix for web tech and seven other areas, with the business impact and the fix for each. No login needed to start.

Run my free website audit →

Was this helpful?