← All headersGeneral header

What is a Via header?

Added by proxies and gateways to show which intermediaries the message passed through.

Via builds up a trail of every proxy, CDN, or gateway a request passed through on its way to and from a website, which is genuinely useful when you're debugging a request that took an unexpectedly slow or roundabout path. If you run uptime monitoring from multiple regions, comparing Via headers across checks can help explain why response times differ from one location to another even when the origin server itself is healthy.

Common use case

Engineers inspect the Via chain to diagnose exactly which proxy or CDN hop is adding latency or altering a request on its way to the origin.

Example

Via: 1.1 varnish, 1.1 cloudflare

History

Part of the original HTTP/1.1 specification, RFC 2068 (1997), specifically to help trace and avoid request-forwarding loops.

Did you know?

Each hop is required to append itself rather than replace the header, so a heavily-proxied request can arrive with a Via value listing half a dozen intermediaries in order.