Webmaster Bench

Tools / HTTP Header & Redirect Checker

HTTP Header & Redirect Checker

Run one command, paste its output, and get every redirect hop, status code, caching rule and security header explained in plain words.

In a terminal (macOS, Linux, or Windows 10+), run:

curl -sIL https://www.example.com/

Why paste instead of entering a URL?

Web pages are not allowed to read the headers of other websites: browsers block such cross-site requests for security, and many "online header checkers" therefore send your URL to their own server and fetch it from there. Running curl yourself takes a second, shows exactly what your server returns to you, and works for internal and staging hosts that no public tool can reach. Nothing you paste here leaves your browser.

-s hides the progress bar, -I sends a HEAD request (headers only), and -L follows redirects, printing each response in turn. If a server mishandles HEAD requests (some answer 405 or 404), use curl -sL -D - -o /dev/null URL instead, which makes a normal GET and prints only the headers. To see what Googlebot gets, add -A "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"; some servers answer bots differently.

Reading a redirect chain

A typical chain for someone typing example.com:

HTTP/1.1 301 Moved Permanently
Location: https://example.com/

HTTP/2 301
location: https://www.example.com/

HTTP/2 200
content-type: text/html; charset=UTF-8

Two hops before the page: first to HTTPS, then to www. It works, but every hop costs a round trip, and long chains waste crawl effort. Better: redirect http://example.com/ straight to https://www.example.com/ in one step. Googlebot follows up to 10 hops; browsers give up at around 20.

Status codes that matter for SEO

CodeMeaningUse it for
301, 308Moved permanentlyChanged URLs, HTTP to HTTPS, domain moves. Search engines index the target. 308 keeps the request method (matters for forms and APIs, not for pages).
302, 307Moved temporarilyShort-term moves (a sale page, maintenance). Google keeps the original URL at first; a "temporary" redirect left for months is eventually treated as permanent.
304Not modifiedAnswer to a conditional request: the cached copy is still good. Saves bandwidth on repeat crawls.
404, 410Not found, gonePages that no longer exist. 410 says it is deliberate; Google drops it a little sooner. Do not redirect every missing page to the home page: Google treats that as a "soft 404" anyway.
429, 503Too many requests, unavailableOverload and maintenance. Googlebot backs off and retries. Add Retry-After. Do not serve 503 for days.
500, 502, 504Server errorsNever intended. If they persist, Google crawls less and eventually drops the URLs.

Caching headers in plain words

  • Cache-Control: max-age=3600: browsers may reuse the response for an hour without asking. s-maxage sets the time for shared caches such as CDNs.
  • no-cache does not mean "do not cache"; it means "check with the server before reusing". no-store is the one that forbids storing.
  • ETag and Last-Modified let a client ask "has it changed?" and get a cheap 304 if not.
  • Vary lists request headers that change the response (for example Accept-Encoding); caches keep one copy per value.
  • Files with a version or hash in their name (app.3f9a1c.js) can be cached for a year with immutable; HTML pages usually should not be cached for long.

Security headers

  • Strict-Transport-Security (HSTS) makes browsers use HTTPS for your host for max-age seconds. Six months to a year is usual; start shorter while testing.
  • Content-Security-Policy limits where scripts, styles and frames may load from. It is the strongest defence against injected scripts, and its frame-ancestors directive replaces X-Frame-Options.
  • X-Content-Type-Options: nosniff stops browsers guessing file types.
  • Referrer-Policy controls how much of your URL is sent to other sites when visitors follow links.

The checker also flags X-Robots-Tag (a noindex here removes the URL from search even when the HTML looks fine), canonical URLs sent in a Link header, missing charsets, and headers that reveal server software versions.

Sources

Last reviewed 2026-11-15. Your input is processed only in your browser and never sent to us.