What does the HTTP header Pragma: Public mean?
According to the standard, Pragma is implementation dependent (section 14.32), except for no-cache because of its wide use. Cache-Control (section 14.9) is the proper way to control caching. This is what the standard says for a Cache-Control: public
:
Indicates that the response MAY be cached by any cache, even if it would normally be non-cacheable or cacheable only within a non- shared cache.
Useful when you come across this error: http://trac.edgewall.org/ticket/1020. IE 8 & less seems to like to cache things when they are on a SSL server. Putting 'Pragma:public' helps with: "Internet Explorer was not able to open this Internet site. The requested site is either unavailable or cannot be found. Please try again later"
Also, "Pragma: Public" is used in Google App Engine applications to enable caching of responses within its Edge Cache.
来源:https://stackoverflow.com/questions/1920781/what-does-the-http-header-pragma-public-mean