HTTP

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

HTTP, eller "Hypertext Transfer Protocol," är ett protokoll som används för att överföra data över World Wide Web (WWW) och andra hypertextbaserade tjänster på internet. Det är det grundläggande protokollet som används för att begära och leverera webbsidor, filer, bilder och andra resurser mellan webbservrar och webbläsare eller andra klienter. Här är en översiktlig beskrivning av HTTP-protokollet:

1. Begäran och svar: HTTP fungerar som ett begäran-och-svar-protokoll. En klient (vanligtvis en webbläsare) skickar en begäran till en webbserver för att hämta en viss webbsida eller resurs. Webbservern behandlar begäran och skickar tillbaka den begärda informationen i form av en HTTP-respons.

2. Stateless-protokoll: HTTP är ett "stateless" protokoll, vilket innebär att varje begäran från en klient betraktas som en oberoende begäran. Webbservern behåller inte information om tidigare begäranden från samma klient. Detta är en av orsakerna till att HTTP inte är lämpligt för att hantera sessioner eller användarautentisering direkt. Sessioner och autentisering hanteras vanligtvis med hjälp av cookies eller andra metoder.

3. Enkelt textbaserat: HTTP är textbaserat, vilket gör det enkelt att förstå och felsöka. En typisk HTTP-begäran eller respons innehåller en startlinje, ett antal rubriker (headers) och en eventuell meddelandekropp (body) som innehåller data som ska överföras.

4. Metoder: HTTP definierar olika metoder för att utföra olika åtgärder på webbresurser. De vanligaste HTTP-metoderna är "GET" för att hämta information, "POST" för att skicka data till en webbserver (till exempel när du skickar in ett webbformulär) och "PUT" för att ladda upp data till en server. Andra metoder inkluderar "DELETE" för att ta bort resurser och "HEAD" för att begära information om en resurs utan att hämta själva innehållet.

5. URI (Uniform Resource Identifier): Varje resurs på webben är identifierad med en unik URI, som inkluderar en webbadress (URL) och en sökväg till resursen.

6. Versioner: HTTP har olika versioner, med HTTP/1.1 och HTTP/2 som några av de mest använda. Nya versioner utvecklas och implementeras för att förbättra prestanda, säkerhet och funktionalitet.

7. Säkerhet: För att förbättra säkerheten när överföring av känslig information, används HTTPS (HTTP Secure). HTTPS krypterar dataöverföringen mellan klienten och servern med hjälp av TLS/SSL-kryptering.

8. Statuskoder: HTTP-protokollet använder statuskoder i responsen för att indikera resultatet av en begäran. Till exempel anger statuskoden "200 OK" att begäran var framgångsrik, medan "404 Not Found" indikerar att den begärda resursen inte kunde hittas.

HTTP är grunden för webb- och internetanvändning och används över hela världen för att överföra webbsidor, media, API-anrop och mer. Det är ett nyckelkomponent i den moderna webben och möjliggör kommunikation och utbyte av information över internet.