[u c s f p] e client stuff E error in request I IMS N no-cache C cookie S simple request (not conditional) cache lookup stuff M miss A in cache, not acceptable S in cache, stale H in cache, fresh server stuff E error in response N not-modified S served cache fill stuff D cached copy deleted W written into cache (new copy) U updated cache proxy stuff N not-modified S served R origin server revalidated error codes N no error A authorization failure C connection to server failed D dns failure F request forbidden H header syntax unacceptable S server related error T connection timed out For example: [u lH o f pS eN] cache hit [u lM oS fF pS eN] cache miss [uN l oS f pS eN] no-cache origin server fetch ------------------------------------------------------- Then there are the detailed via codes which follow a ":" tcips tunneling information F tunneling due to a header field (such as presence of If-Range header) M tunneling due to a method (e.g. CONNECT) O tunneling because cache is turned off U tunneling because of url (url suggests dynamic content) cache type C cache L cluster (not used) I icp cache lookup result N conditional hit (client sent conditional, fresh in cache, returned 304) H cache hit I conditional miss (client sent conditional, fresh in cache, returned 412) M cache miss (url not in cache) S cache hit, but expired C cache hit, but config forces revalidate U cache hit, but client forces revalidate (e.g. Pragma: no-cache) D cache hit, but method forces revalidated (e.g. not anonymous) icp conn info S connection opened successfully F connection open failed pp conn info S connection opened successfully F connection open failed server conn info S connection opened successfully F connection open failed