Trace an HTTP symptom to its cause
Begin with what you can observe, identify which layer can produce it, and use focused checks before changing configuration.
Choose the symptom you observed
client · origin · protocol
A browser does not send a cookie
Diagnose cookie storage and request selection separately from CORS response access.
- A Set-Cookie response was observed but a later request has no matching Cookie pair.
- The cookie is sent on one path or navigation but not another Fetch request.
client · browser-cache · proxy · cdn · origin · protocol
A browser reports a CORS error
Find which CORS flow step failed and preserve the HTTP response evidence the browser received.
- Browser JavaScript cannot read a cross-origin response and the console names CORS.
- Server logs show a request even though Fetch rejects its promise.
client · shared-cache · proxy · cdn · origin · protocol
A conditional request does not return 304
Match the request condition to the current selected representation before expecting 304.
- A GET with If-None-Match returns 200 instead of the expected 304.
- The response entity tag differs even though the visible content looks unchanged.
client · proxy · cdn · origin · protocol
A CORS preflight request fails
Compare the browser's requested CORS permission with the exact preflight response.
- The browser sends OPTIONS but never sends the intended cross-origin request.
- The preflight response is successful HTTP but the browser still rejects it.
browser-cache · shared-cache · cdn · origin
A page still looks stale after deployment
Identify which layer served an old representation and validate the cache key and freshness evidence.
- A recently deployed page still shows an older representation.
- Different clients receive different representation versions.
client · proxy · cdn · origin
A redirect keeps repeating
Find the first repeated target and the layer that generated it before changing redirect rules.
- A client reports too many redirects or stops after its redirect limit.
- Two or more URLs repeat in the captured redirect chain.
client · proxy · cdn · origin · protocol
A request method changed after a redirect
Trace the redirect status and follow-up request before changing client or server behavior.
- An origin expects POST but receives GET after a client follows a redirect.
- Request content disappears between the original and redirected request.
proxy · cdn · origin · protocol
HTTP fields change behind a proxy or CDN
Compare the same exchange at adjacent controlled hops before attributing a field change to the origin.
- Client-visible fields differ from application logs for the apparent same request.
- A field is present on one route or protocol version but absent on another.
