304
Not Modified
Špecifikácia stavového kódu HTTP 304
Stavový kód 304 Not Modified označuje, že bola prijatá podmienená požiadavka GET alebo HEAD a výsledkom by bola odpoveď 200 (OK), ak by sa podmienka nevyhodnotila ako nepravdivá. Inými slovami, nie je potrebné, aby server prenášal reprezentáciu cieľového prostriedku, pretože požiadavka naznačuje, že klient, ktorý podmienenú požiadavku zadal, už má platnú reprezentáciu; server preto presmeruje klienta, aby využil túto uloženú reprezentáciu, ako keby bola obsahom odpovede 200 (OK).
Server generujúci odpoveď 304 Not Modified MUSÍ generovať ktorékoľvek z nasledujúcich polí hlavičky, ktoré by boli odoslané v odpovedi 200 (OK) na tú istú požiadavku:
- Content-Location, Date, ETag a Vary
- Cache-Control a Expires (pozri [CACHING])
Keďže cieľom odpovede 304 Not Modified je minimalizovať prenos informácií, keď príjemca už má jednu alebo viac reprezentácií v medzipamäti, odosielateľ NESMIE generovať iné metadáta reprezentácie ako uvedené polia, pokiaľ uvedené metadáta neexistujú na účely usmerňovania aktualizácií medzipamäte (napr.g., Last-Modified môže byť užitočné, ak odpoveď nemá pole ETag).
Požiadavky na vyrovnávaciu pamäť, ktorá prijíma odpoveď 304 Not Modified, sú definované v časti 4.3.4 [CACHING]. Ak podmienená požiadavka pochádza od odchádzajúceho klienta, napríklad od používateľského agenta s vlastnou vyrovnávacou pamäťou, ktorý posiela podmienený GET zdieľanému proxy serveru, potom proxy server MUSÍ odpoveď 304 Not Modified poslať tomuto klientovi.
Odpoveď 304 Not Modified je ukončená koncom časti hlavičky; nemôže obsahovať obsah ani upútavky.
Zdroj / Citát z: Stavový kód HTTP 304 Not Modified je špecifikovaný v časti 15.4.5 časti RFC9110.
Protokol HTTP
Ako vyhodiť stavový kód 304 pomocou PHP?
Na vyhodenie stavového kódu HTTP 304 na webovej stránke možno použiť funkciu PHP http_response_code. Syntax je nasledovná: http_response_code(304) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testovanie stavového kódu HTTP 304
Aby bolo možné zobraziť stavový kód HTTP (v tomto prípade 304 Not Modified) a ďalšie informácie na strane klienta, je potrebné otvoriť vývojovú konzolu pomocou klávesu F12. Potom prejdite na kartu "Sieť". Teraz je možné otvoriť stránku, webová stránka (príklad index.php) by mala byť viditeľná na karte siete. Tú je potrebné vybrať a potom je potrebné vybrať sekciu Herder. Používateľovi sa potom zobrazí nasledujúci výsledok:
URL: https://http-statuscode.com/errorCodeExample.php?code=304
Stav: 304 Not Modified
Tieto: Network
IP adresa: XX.XX.XX.XX
Kompatibilita stavového kódu 304 s prehliadačom
Chrome | Yes |
Edge | Yes |
Firefox | Yes |
Opera | Yes |
Safari | Yes |
Chrome Android | Yes |
Firefox for Android | Yes |
Opera Android | Yes |
Safari on iOS | Yes |
Internet | Yes |
WebView Android | Yes |
Konštanty v programovacích jazykoch
Externé odkazy s ďalšími informáciami o stavovom kóde HTTP 304:
Zábavné mémy o stavovom kóde HTTP 304
Články na blogu
Ukladanie do vyrovnávacej pamäte a stavové kódy HTTP: Optimalizácia výkonu webu prostredníctvom inteligentného ukladania do vyrovnávacej pamäte
Výkon webu a výsledný používateľský zážitok sú ústrednými aspektmi úspechu každej webovej stránky. Významným faktorom ovplyvňujúcim tento výkon sú stavové kódy HTTP, najmä v súvislosti so stratégia...