304
Not Modified
Spesifikasjon av HTTP-statuskoden 304
Statuskoden 304 Not Modified indikerer at en betinget GET- eller HEAD-forespørsel er mottatt og ville ha resultert i et 200-svar (OK) hvis det ikke var for at betingelsen ble evaluert til falsk. Med andre ord er det ikke nødvendig for serveren å overføre en representasjon av målressursen fordi forespørselen indikerer at klienten, som gjorde forespørselen betinget, allerede har en gyldig representasjon; serveren omdirigerer derfor klienten til å bruke den lagrede representasjonen som om det var innholdet i et 200 (OK) svar.
Serveren som genererer et 304 Not Modified-svar MÅ generere et av følgende hodefelt som ville blitt sendt i et 200 (OK)-svar på den samme forespørselen:
- Content-Location, Date, ETag og Vary
- Cache-Control og Expires (se [CACHING])
Siden målet med et 304 Not Modified-svar er å minimere informasjonsoverføring når mottakeren allerede har en eller flere hurtigbufrede representasjoner, SKAL en avsender IKKE generere andre representasjonsmetadata enn feltene som er oppført ovenfor, med mindre metadataene finnes for å styre hurtigbufferoppdateringer (f.eks.g., Last-Modified kan være nyttig hvis svaret ikke har et ETag-felt).
Krav til en cache som mottar et 304 Not Modified-svar er definert i avsnitt 4.3.4 i [CACHING]. Hvis den betingede forespørselen stammer fra en utgående klient, for eksempel en brukeragent med egen cache som sender en betinget GET til en delt proxy, BØR proxyen videresende 304 Not Modified-svaret til den klienten.
Et 304 Not Modified-svar avsluttes ved slutten av header-delen; det kan ikke inneholde innhold eller trailere.
.
Kilde / Sitat fra: 304 Not Modified HTTP-statuskoden er spesifisert av seksjon 15.4.5 i RFC9110.
HTTP-protokoll
Hvordan kaste en 304-statuskode med PHP?
For å kaste HTTP-statuskoden 304 på en nettside kan PHP-funksjonen http_response_code brukes. Syntaksen er som følger: http_response_code(304) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Test 304 HTTP-statuskoden
For å kunne vise HTTP-statuskoden (i dette tilfellet 304 Not Modified) og annen informasjon på klientsiden, må utviklingskonsollen åpnes med F12. Naviger deretter til fanen "Nettverk". Nå kan siden åpnes, nettstedet (eksempel index.php) skal være synlig i nettverksfanen. Dette må velges, og deretter må Herder-delen velges. Brukeren vil da se følgende resultat:
URL: https://http-statuscode.com/errorCodeExample.php?code=304
Status: 304 Not Modified
De: Network
IP-adresse: XX.XX.XX.XX
Nettleserkompatibilitet for 304-statuskoden
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 |
Konstanter i programmeringsspråk
Eksterne lenker med mer informasjon om HTTP-statuskode 304:
Underholdende memes om HTTP-statuskoden 304
Bloggartikler
Bufring og HTTP-statuskoder: Optimaliser ytelsen på nettet ved hjelp av intelligent hurtigbufring
Nettytelse og den resulterende brukeropplevelsen er sentrale aspekter for suksessen til ethvert nettsted. En viktig faktor som påvirker ytelsen, er HTTP-statuskodene, spesielt i forbindelse med cac...