Webbutveckling 1 · område 1
Från adress till sida
Vad som faktiskt händer mellan att du trycker enter och att sidan syns. Det här är underlaget till projektet vi bygger tillsammans – sidan du lämnar in ska förklara precis den här kedjan.
- 4 sept Inlämning kl 23:59 Så fungerar webben. Länken till ditt publika repo lämnas i itslearning.
1. Internet är inte webben
Det här är den skillnad som oftast blir fel, så ta den först. Internet är näten och kablarna – vägarna. Webben är en av tjänsterna som åker på dem – trafiken. E-post, spel och strömmad video använder samma vägar utan att vara webben.
| År | Vad som hände |
|---|---|
| 1969 | ARPANET kopplar ihop fyra amerikanska universitet. |
| 1983 | TCP/IP blir gemensamt språk för näten. Det är här internet börjar. |
| 1989 | Tim Berners-Lee skriver förslaget till webben på CERN. |
| 1991 | Första webbplatsen går live. Bara text och länkar – ingen CSS, ingen JavaScript. |
| 1993 | Webben släpps fri utan avgifter. Ingen äger den. |
| 2007 | Telefonen blir webbläsare. Mobilen går så småningom om datorn. |
| I dag | En webbplats är oftare en app än ett dokument. |
Att det bara fanns HTML 1991 är värt att lägga märke till: kursen följer samma ordning. Område 2 är struktur, område 3 är form, område 6 är beteende.
2. Klienten frågar, servern svarar
Klienten är din webbläsare. Den frågar. Servern är en dator som står påslagen dygnet runt. Den svarar. HTTP är reglerna för hur frågan och svaret får se ut.
Ett anrop har alltid två delar: en förfrågan och ett svar. Servern gör ingenting av sig själv – ingen sida kommer utan att någon har bett om den. Det som ser ut som en sida är i själva verket ett dokument som i sin tur ber om bilder, stilmallar och skript, var och en med sitt eget anrop.
Varje svar börjar med en statuskod. Fyra du kommer att möta:
| Kod | Betyder | Vems fel |
|---|---|---|
| 200 | Här är den. Allt fungerade. | – |
| 301 | Sidan har flyttat, gå hit i stället. | – |
| 404 | Servern har ingen sådan sida. | Ditt. Felstavad sökväg eller raderad fil |
| 500 | Servern kraschade. | Serverns. Du kan inte göra något åt det |
HTTPS är samma HTTP, krypterat på vägen. Hänglåset betyder att ingen kan tjuvlyssna eller ändra i det som skickas. Det betyder inte att den som äger sajten är ärlig – bedragare har också hänglås.
3. DNS – från namn till nummer
Servrar har nummer, inte namn. 142.250.74.110 är en adress.
google.com är ett namn som någon måste slå upp åt dig. Den
uppslagningen heter DNS.
- Webbläsaren tittar i sitt eget minne. Har jag frågat nyligen?
- Operativsystemet tittar i sitt.
- Frågan går vidare till en namnserver, oftast internetleverantörens.
- Den frågar uppåt tills någon svarar med rätt nummer.
- Svaret sparas en stund. Nästa gång går det på millisekunder.
Poängen är sista steget: uppslagningen görs nästan aldrig, för svaret ligger sparat i flera lager. Det är också därför en ändrad DNS-post kan ta timmar att slå igenom – gamla svar ligger kvar tills de går ut.
DNS hämtar ingen sida. Den svarar på en enda fråga – vilket nummer har det här namnet – och sedan är den klar. Först därefter går själva anropet iväg.
4. Adressens delar
Allt i adressfältet betyder något. Delarna kommer tillbaka i område 2, när du börjar länka mellan dina egna sidor.
https://www.example.se/kurser/webb/index.html?niva=1#krav
| Del | Heter | Gör |
|---|---|---|
https | Protokoll | Vilka regler som gäller, och om trafiken är krypterad |
www | Subdomän | En del av namnet. Frivillig – inte magisk |
example | Domännamn | Det någon har registrerat och betalar för |
.se | Toppdomän | Vem som administrerar namnet |
/kurser/webb/ | Sökväg | Var på servern dokumentet ligger. Ofta en riktig mappstruktur |
index.html | Filnamn | Utelämnar du det svarar servern med index.html ändå |
?niva=1 | Frågesträng | Extra information till servern |
#krav | Fragment | En plats på sidan. Skickas aldrig till servern |
Två som är värda att minnas. index.html är förvalet – därför heter
startsidan så i den här kursen, och därför fungerar example.se/kurser/
utan filnamn. Och fragmentet lämnar aldrig din dator: servern får aldrig veta
vilken rubrik du hoppade till, det är webbläsaren som scrollar.
5. Titta själv i DevTools
Öppna en sajt som laddar mycket – en nyhetssajt fungerar bra – och gör det här medan du har sidan uppe. Kryssen sparas i din webbläsare.
Tryck F12, eller högerklicka på sidan och välj Inspektera. Gå till fliken Network (Nätverk) och ladda om med F5. Är listan tom laddade du om innan verktyget var öppet – ladda om en gång till.
Ska-krav — nivå E
Bör-krav — mot nivå C
Utmaning — mot nivå A
Kryssen sparas i din webbläsare.
6. Vem stängs ute?
Webben är inte bara teknik. Bank, vård, myndigheter och skola ligger där nu, och det som är svårt att använda blir därmed svårt att leva med. Digitalt utanförskap är inte bara att sakna internet – det är lika ofta att den som byggde inte tänkte på dig.
- Den som ser dåligt, förstorar texten eller lyssnar på sidan i stället för att läsa.
- Den som har en långsam eller dyr uppkoppling. En sida på 12 MB kostar pengar.
- Den som har en gammal telefon och ingen möjlighet att byta.
- Den som inte har någon dator alls och sköter allt i mobilen.
Det här är skälet till att bilder ska ha alt och formulärfält ska ha
label i allt du lämnar in, från och med nästa vecka. Område 4 handlar
om ingenting annat.
7. Vanliga missförstånd
8 rader
| Det många tror | Så är det i stället |
|---|---|
| Internet och webben är samma sak | Webben är en tjänst på internet, bland flera. Vägarna och trafiken |
| DNS hämtar sidan | DNS översätter bara namn till nummer. Sedan är den klar |
Man måste ha www | www är en frivillig subdomän. Många sajter fungerar utan |
| 404 betyder att internet är nere | Servern svarade – den hittade bara inte sidan. Kontakten fungerade |
| 500 betyder att jag gjort fel | 500 är serverns fel. Vid 404 kan du göra något, vid 500 inte |
| Hänglåset betyder att sajten går att lita på | HTTPS krypterar transporten. Sajten kan ändå ljuga |
| En sida är en fil | En sida är ett dokument plus allt det i sin tur begär |
| Adressfältet och sökrutan är samma sak | I adressfältet går du direkt. I sökrutan söker du |
8. Ord du ska kunna
Orden nedan används resten av kursen utan att förklaras om. Träna på dem här – knappen tar ett slumpat ord i taget.
Ordträning
| Ord | Betyder |
|---|---|
| internet | Näten och kablarna som datorer pratar över. Vägarna |
| webben | Sidorna och länkarna som åker på internet. En tjänst bland flera |
| klient | Programmet som frågar. Din webbläsare |
| server | Datorn som svarar. Står påslagen dygnet runt |
| HTTP | Reglerna för hur en förfrågan och ett svar får se ut |
| HTTPS | Samma HTTP, krypterat på vägen |
| statuskod | Numret svaret börjar med. 200, 301, 404, 500 |
| DNS | Uppslagningen som översätter ett namn till ett nummer |
| IP-adress | Numret en dator faktiskt nås på |
| domän | Det registrerade namnet, till exempel example.se |
| toppdomän | Sista delen av namnet, till exempel .se |
| sökväg | Delen efter domänen som pekar ut var dokumentet ligger |
| fragment | Delen efter #. En plats på sidan, skickas aldrig till servern |
| cache | Sparat svar som återanvänds i stället för att frågas om på nytt |
| DevTools | Webbläsarens inbyggda verktyg. Öppnas med F12 |