Internet je globalna mreža povezanih računara koji komuniciraju koristeći standardizovane protokole.
U ovom materijalu ćemo proći kroz osnovne koncepte koji omogućavaju funkcionisanje interneta, fokusirajući se na proces koji se dešava kada korisnik unese URL u web pretraživač.
Proces počinje kada korisnik unese URL (Uniform Resource Locator) u svoj web pretraživač, na primer: https://www.example.com
.
https://
- Protokol (u ovom slučaju, Hypertext Transfer Protocol Secure)www
- Subdomenexample.com
- Domen/
- Putanja (u ovom slučaju, korenski direktorijum)Web pretraživač formira HTTP zahtev koji sadrži:
Primer HTTP GET zahteva:
GET / HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
IP (Internet Protocol) adresa je jedinstveni numerički identifikator dodeljen svakom uređaju na mreži. Postoje dve verzije IP adresa:
DNS serveri su poput "telefonskog imenika" interneta. Oni prevode ljudski čitljive domene u IP adrese.
Proces DNS rezolucije:
Kada pretraživač dobije IP adresu, inicira TCP (Transmission Control Protocol) handshake sa serverom:
Za sigurne veze (HTTPS), nakon TCP handshake-a sledi TLS (Transport Layer Security) handshake:
Web server je softver koji obrađuje HTTP zahteve i vraća odgovore. Neki popularni web serveri su:
HTTP odgovor sadrži:
Primer HTTP odgovora:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1234
<!DOCTYPE html>
<html>
<head>
<title>Example.com</title>
</head>
<body>
<h1>Dobrodošli na Example.com</h1>
<!-- ostatak HTML-a -->
</body>
</html>
Nakon što dobije odgovor, web pretraživač renderuje (obrađuje za prikaz) fajl(ove) dobijene odgovorom (ili odgovorima na više zahteva) u stranicu koju korisnik može gledati
i sa kojom može intereagovati.
Front-end jezici se izvršavaju u web pretraživaču korisnika i odgovorni su za izgled i interaktivnost web stranice.
Glavni front-end jezici su:
Primer HTML-a sa CSS-om i JavaScript-om:
<!DOCTYPE html>
<html>
<head>
<title>Moja stranica</title>
<style>
body { font-family: Arial, sans-serif; }
.button { background-color: blue; color: white; }
</style>
</head>
<body>
<h1>Dobrodošli</h1>
<button class="button" onclick="alert('Zdravo!')">Klikni me</button>
<script>
console.log("JavaScript se izvršava!");
</script>
</body>
</html>
Back-end jezici se izvršavaju na serveru i odgovorni su za logiku, baze podataka i generisanje dinamičkog sadržaja.
Popularni back-end jezici i tehnologije uključuju:
Primer jednostavne PHP skripte:
<?php
$ime = "Posetioc";
if (isset($_GET['ime'])) {
$ime = $_GET['ime'];
}
echo "Zdravo, " . htmlspecialchars($ime) . "!";
?>