Benim soru both aldığınızda "Değişmedi" bir HTTP 304 cevap konusunda none-maç-eğer ve değişiklikte-yana bir vekil / müvekkil istek.
RFC 2616 secttion 14.26 dan (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.26):
If none of the entity tags match, then the server MAY perform the requested method as if the If-None-Match header field did not exist, but MUST also ignore any If-Modified-Since header field(s) in the request. That is, if no entity tags match, then the server MUST NOT return a 304 (Not Modified) response.
Ben bu ifadeyi anlamak için emin değilim ...
- PHP "varlık etiketleri maçın hiçbiri" Eğer onlar daha önce gönderilen benim ETAG'ları vs $ _SERVER ['HTTP_IF_NONE_MATCH'] söz ediyorsun?
- Ben en kısa sürede $ _SERVER ['HTTP_IF_NONE_MATCH'] benim ETAG'ları maç listelenen ETAG'ları hiçbiri doğru olarak bu deyimi, anlamak, tüm doğrulamaları durdurmak ve normal sayfa hizmet.
Herkes pseudo-kod (veya PHP kodu) bu RFC bölümünü tercüme ve / veya yukarıda benim 2 puan cevap verebilir?
EDIT 1: Thank you St.Woland for your answer. Can you (or anyone else) tell me if I'm correct on these 6 points:
$ _SERVER ['HTTP_IF_NONE_MATCH'] formatı da olabilir:
a) If-None-Match: "xyzzy", "r2d2xxxx", "c3piozzzz"
b) If-None-Match: "xyzzy"
and NOT:
c) If-None-Match: "xyzzy, r2d2xxxx, c3piozzzz"
Array_key_exists ('HTTP_IF_NONE_MATCH', $ _SERVER), anyTagMatched eğer! () NULL döndürür.
En kısa sürede $ _SERVER bir ETag'a olarak ['HTTP_IF_NONE_MATCH'] benim belge ETag neticesinde, anyTagMatched () DOĞRU döndürür.
$ _SERVER ['HTTP_IF_NONE_MATCH'] içinde ETAG'ları hiçbiri benim belge ETag eşleşen varsa, anyTagMatched () FALSE döndürür.
$ _SERVER ['HTTP_IF_MODIFIED_SINCE'] ayarlamak ve tarih isExpired ("son olarak" Belgemi eleiyorsa) FALSE döndürür, aksi takdirde TRUE döndürür.
En kısa sürede anyTagMatched () DOĞRU verir gibi, ben bir 304 yayınlayacak. AnyTagMatched ise () NULL döndü ve isExpired () Ben 304 verebilir YANLIŞ döndü. Diğer herhangi bir durumda ben, normal olarak benim sayfa hizmet (Ben de sorunu up- -tarih Last-Modified ve ETag başlıkları).