Website Health Guides

HTTP Status Codes Explained: 200, 301, 404 and 500

Learn what HTTP status codes mean, including 200, 301, 302, 404, 500, 502 and 503, and how to fix website response problems.

By CheckDomainHealth Editorial Team Reviewed by Dionis Ceban Updated Jun 28, 2026 9 min read Beginner

Introduction

HTTP status codes are the server’s way of explaining what happened when a browser, search engine or monitoring tool requested a URL. A status code can show that the page loaded successfully, redirected somewhere else, was not found, or failed because of a server problem.

For website health, the most important checks are the first response, the final response after redirects, whether HTTPS works, whether www and non-www versions behave consistently, and whether important pages return the expected status.

Quick answer

Quick answer

HTTP status codes show how a server responds to a URL. 200 means the page loaded, 301 means permanent redirect, 302 means temporary redirect, 404 means not found, and 500-level codes mean server or upstream errors. Check both the initial status and the final status after redirects.

HTTP status codes

HTTP status codes are three-digit responses returned by a web server.

  • 2xx: successful responses
  • 3xx: redirects
  • 4xx: client or request errors
  • 5xx: server errors

A status code does not always tell the full story. A URL may return 301 first, then finally return 200 after redirecting to the correct page.

Important codes

200 OK

The page loaded successfully.

301 Moved Permanently

The URL permanently redirects to another URL.

302 Found

The URL temporarily redirects to another URL.

307 Temporary Redirect

Temporary redirect that preserves request method.

308 Permanent Redirect

Permanent redirect that preserves request method.

400 Bad Request

The server cannot process the request.

401 Unauthorized

Authentication is required.

403 Forbidden

The server refuses access.

404 Not Found

The page does not exist at that URL.

410 Gone

The page was intentionally removed.

429 Too Many Requests

Rate limit or anti-bot protection is blocking requests.

500 Internal Server Error

The application or server failed.

502 Bad Gateway

Proxy or gateway received an invalid response.

503 Service Unavailable

Server is overloaded, down or in maintenance.

504 Gateway Timeout

Proxy or gateway waited too long for the upstream server.

200 OK

A 200 status means the server returned the requested page successfully. This is usually what you want for live pages, important landing pages, tool pages and homepage URLs.

  • Page content is correct
  • Canonical URL is correct
  • HTTPS version returns 200
  • Final URL after redirects returns 200
  • No soft 404 message appears
  • Page is not blocked by noindex if it should rank

A 200 status only means the server responded successfully. It does not prove the page content is correct or SEO-ready.

301 and 302 redirects

Redirects tell browsers and search engines to go to another URL.

301

  • Use for permanent moves, such as HTTP to HTTPS, old URL to new URL, or non-www to www.

302

  • Use for temporary moves, testing or short-term redirects.
  • Redirect goes to the correct final URL
  • Redirect chain is not too long
  • HTTP redirects to HTTPS
  • www and non-www redirect consistently
  • Old URLs redirect to relevant new pages
  • Redirects do not loop

For SEO and clean website behavior, permanent site moves usually need 301 redirects, not temporary 302 redirects.

404 and 410 pages

A 404 means the requested page was not found. A 410 means the page is intentionally gone.

404 is normal when

  • A user typed the wrong URL
  • An old page was deleted
  • A broken link points to a missing page

404 is a problem when

  • Important pages return 404
  • Internal links point to missing URLs
  • Sitemap URLs return 404
  • Product or service pages disappear unintentionally
  • Old URLs have no useful redirect

A custom 404 page is useful, but important missing pages should usually be fixed or redirected.

500-level errors

500-level errors mean something failed on the server side or between the server and upstream services.

  • Application crash
  • PHP error
  • Database connection failure
  • Overloaded server
  • Bad plugin or theme update
  • Proxy or CDN issue
  • Upstream timeout
  • Maintenance mode
  • Resource limits
  • Firewall or WAF problem

500-level errors are more urgent than normal 404s because users and search engines cannot access the content.

Why this matters

Why this matters

HTTP status codes matter because they directly affect user access, search engine crawling, monitoring, uptime checks and troubleshooting. A page that should return 200 but returns 404 or 500 may lose traffic, conversions and trust.

Redirect mistakes can also create SEO and usability problems if users or search engines are sent through loops, long chains or irrelevant pages.

How to check codes

Use Website Status Checker to test the URL and see the response code, redirects and final destination.

  1. Homepage — confirm the main domain returns the expected final status.
  2. HTTP to HTTPS — confirm HTTP redirects to HTTPS.
  3. www vs non-www — confirm one canonical version is used.
  4. Important pages — check service pages, tool pages, guides and contact pages.
  5. Redirect chain — confirm redirects are short and intentional.
  6. Missing pages — check whether old URLs return 404, 410 or redirect correctly.
  7. Server errors — investigate any 500, 502, 503 or 504 response.
  8. CDN or proxy layer — if a CDN is used, compare CDN response and origin response.

Check HTTP status codes

Use Website Status Checker to test the URL and see the response code, redirects and final destination.

Run Website Status Check →

Common problems

Important page returns 404

High

A page that should exist is missing or routed incorrectly.

Next step: Restore the page, fix routing or redirect to the correct replacement.

Redirect loop

High

The URL redirects back to itself or cycles between URLs.

Next step: Review HTTPS, www/non-www, CDN and application redirect rules.

Long redirect chain

Medium

The URL passes through too many redirects before the final page.

Next step: Redirect directly to the final canonical URL.

HTTP does not redirect to HTTPS

Medium

Users may access the insecure version of the site.

Next step: Add a clean HTTP to HTTPS redirect.

Wrong 302 used for permanent move

Medium

A permanent URL change is treated as temporary.

Next step: Use 301 or 308 where the move is permanent.

Server returns 500

High

The application or server failed while processing the request.

Next step: Check application logs, PHP errors, plugins, database and server resources.

502 or 504 from proxy/CDN

High

A gateway, CDN or proxy cannot reach the origin correctly.

Next step: Check origin availability, firewall, upstream service and timeout settings.

Soft 404

Medium

The page returns 200 but displays “not found” content.

Next step: Return a real 404 or 410 or redirect to a relevant page.

Blocked by 403

Medium

Access is forbidden by permissions, WAF, firewall or server rules.

Next step: Review security rules, file permissions and access restrictions.

How to fix issues

  1. Step 1: Identify the exact URL

    Check the full URL, including protocol, www/non-www, path and trailing slash.

  2. Step 2: Check the final status

    Follow redirects and confirm the final response code.

  3. Step 3: Fix broken pages

    Restore missing content, fix routing or redirect old URLs to relevant replacements.

  4. Step 4: Clean redirects

    Use direct redirects and avoid loops or unnecessary chains.

  5. Step 5: Fix HTTPS and canonical behavior

    Redirect HTTP to HTTPS and choose one www or non-www version.

  6. Step 6: Investigate server errors

    Check logs, plugins, database, server resources, CDN and proxy configuration.

  7. Step 7: Update internal links and sitemap

    Remove broken URLs and point links to final canonical URLs.

  8. Step 8: Monitor after changes

    Re-check status codes after deployment, DNS changes or migrations.

Status code examples
Check headers:
curl -I https://example.com

Follow redirects:
curl -IL http://example.com

Example good redirect:
http://example.com
 301 https://example.com
 200 OK

Example bad redirect chain:
http://example.com
 301 http://www.example.com
 301 https://www.example.com
 301 https://example.com
 200 OK

Better:
http://example.com
 301 https://example.com
 200 OK

Examples are illustrative. Replace example.com with your real URL and review production redirect rules carefully.

SEO impact

Search engines use status codes to understand whether pages are available, moved, missing or broken.

  • 200 pages can be indexed if not blocked
  • 301 redirects pass users and search engines to the new URL
  • 302 redirects are treated as temporary
  • 404 pages are normal if pages truly do not exist
  • 410 can signal intentional removal
  • 5xx errors can reduce crawl reliability if persistent
  • Redirect chains waste crawl efficiency
  • Soft 404s confuse indexing

Status codes should match the real page state.

Migration checklist

After a migration

Check these status code items after moving or restructuring a site.

Homepage returns final 200

Main domain loads correctly.

HTTP redirects to HTTPS

Insecure URLs redirect cleanly.

Old URLs redirect to new URLs

Permanent moves use 301 where appropriate.

www/non-www is consistent

One canonical hostname is used.

Important pages return 200

Key pages are reachable.

Removed pages return 404 or 410

Deleted content is handled correctly.

No redirect loops

URLs do not cycle between redirects.

No long redirect chains

Redirects go directly to final URLs.

Sitemap URLs return 200

Sitemap entries are valid.

Canonical URLs match final URLs

SEO signals align with final responses.

No unexpected 500 errors

Server errors are investigated.

CDN and origin consistent

Edge and origin responses match expectations.

Frequently asked questions

What does 200 OK mean?

The server successfully returned the requested page.

What is the difference between 301 and 302?

301 is a permanent redirect. 302 is a temporary redirect.

Is 404 always bad?

No. 404 is normal for pages that truly do not exist, but it is bad for important pages or sitemap URLs.

What does 500 mean?

A 500 error means the server or application failed while processing the request.

What does 502 mean?

A gateway, CDN or proxy received a bad response from the upstream server.

Should HTTP redirect to HTTPS?

Yes, most public websites should redirect HTTP to HTTPS.

How do I find redirect loops?

Use a status checker or curl with redirect following to see each redirect step.

Use these free tools to verify your configuration after applying changes.

Browse all Website Health guides →

Need help applying this fix?

Send us your domain, report link or issue details. CheckDomainHealth will review the request and route it to the right technical team if hands-on support is needed.

Get Help Run Domain Health Check

Was this guide helpful?

Your feedback helps us improve our guides for everyone.