What does the Pragma: Public HTTP header mean?
According to the standard , Pragma is implementation dependent (section 14.32), with the exception of no-cache due to its widespread use. Cache-Control (section 14.9) is the right way to manage caching. This is what the standard says for Cache-Control: public :
Cache-Control: public
Indicates that the response MAY be cached by any cache, even if it is usually not cached or cached only in a non-elementary cache.
Useful if you encounter this error: http://trac.edgewall.org/ticket/1020 . IE 8 and less seem to like to cache things when they are on an SSL server. Turning on โPragma: publicโ helps with: โInternet Explorer could not open this Internet site. The requested site is either unavailable or cannot be found. Please try again later.โ
In addition, Pragma: Public is used by Google App Engine applications to enable response caching in its edge cache.
See More About the Google App Engine Caching Proxy?