What is a Pragma header?
A legacy, HTTP/1.0-era caching directive - Cache-Control is the modern replacement and should be preferred.
Pragma: no-cache is a holdover from HTTP/1.0 that some older clients and proxies still respect, which is why you'll occasionally still see a website send it alongside a proper Cache-Control header for backwards compatibility rather than on its own. It's not something worth building new caching logic around today, but if you're auditing a site's headers for uptime monitoring or SEO purposes, seeing bare Pragma with no Cache-Control is usually a sign the caching setup hasn't been touched in a long time.
Common use case
Sent alongside Cache-Control: no-cache purely as a belt-and-braces fallback for any HTTP/1.0-only client or ancient proxy still in the request path.
Example
Pragma: no-cacheHistory
Defined in the original HTTP/1.0 specification, RFC 1945 (1996), before Cache-Control existed at all.
Deprecated / legacy status
Formally superseded by Cache-Control in HTTP/1.1 (RFC 2068, 1997) because Pragma only ever defined the single no-cache directive and had no way to express anything more nuanced like max-age or public/private.