Server

HTTP Checker

Check a site's HTTP/HTTPS response, timing, and redirect chain.

How do I check a website's redirects and status code?

Reviewed by Prabath Thalangama · Last updated

Request the URL and follow every redirect, recording each hop's status code and response time. This HTTP checker does that from our servers, following up to 10 redirects with a 10-second timeout, and flags sites that can't be reached, redirect loops and pages that end up served over plain HTTP.

Entering a bare domain tests https:// by default. Enter http://example.com explicitly to check that plain HTTP redirects to HTTPS.

Every hop is validated before it is followed, so a redirect to a private or internal address is refused rather than fetched.

How do I check a URL's redirect chain?

  1. Enter a domain or full URL, for example http://example.com/old-page.
  2. Read the hops from first to last: the status code, the URL and the time each took.
  3. Aim for one redirect at most between any public URL and its final page.

How to read the results

Hops
Each request in order with its URL, status code and response time.
Final status / URL
The status and address of the page the chain ends on. 200 is a normal page.
Total time
The sum of every hop's response time. Each extra redirect adds a full round trip for users too.
Findings
Unreachable or redirect loop (critical), and a final page served over plain HTTP (warning).

Common HTTP and redirect problems

Too many redirects

Usually two rules undoing each other, such as a CDN forcing HTTP to the origin while the origin forces HTTPS. Set the CDN to connect to the origin over HTTPS (Cloudflare: SSL mode Full (strict)).

Final page is HTTP

Add a permanent redirect from HTTP to HTTPS on the server or CDN.

server {
    listen 80;
    server_name example.com www.example.com;
    return 301 https://example.com$request_uri;
}

Chain of several redirects

http → https → www → final path is three round trips. Redirect straight to the final URL from each entry point.

Examples and command-line equivalents

Follow redirects with curl

curl -sIL http://example.com/ | grep -iE '^(HTTP|location)'

Time a request

curl -so /dev/null -w '%{http_code} %{time_total}s\n' https://example.com/

Frequently asked questions

301 or 302 redirect?

Use 301 (or 308) for permanent moves such as HTTP to HTTPS or an old URL to a new one; search engines transfer ranking signals to the target. Use 302 (or 307) only for temporary redirects.

Does this show the response headers?

It shows each hop's status and timing. To review security headers, use the security headers checker; for every header, curl -sI is quickest.

Further reading

All Website tools →