SlideShare une entreprise Scribd logo
1  sur  73
Så funkar...webben Teknik i Media BITS Peter Antman 2004
Så funkar...webben Webben Det vi kanske närmast kopplar till Internet. Vid sidan av ordbehandling och mail det vi gör mest.
Så funkar...webben Webben Att med hjälp av en "browser" hämta och läsa dokument som inte ligger lokalt. En adress: http://www.sydsvenskan.se
Så funkar...webben En sida i en browser
Så funkar...webben
Så funkar...webben Källkoden bakom sidan
Så funkar...webben
Så funkar...webben Dessa tre vardagliga, enkla saker utgör de tre ben som webben står på: ,[object Object]
Så funkar...webben Webben kom ganska sent i Internet-floran
Så funkar...webben Historia Vannevar Bush (1945) ,[object Object]
Information overload "There is a growing mountain of research. But there is increased evidence that we are being bogged down today as specialization extends...Mendel's concept of the laws of genetics was lost to the world for a generation because his publication did not reach the few who were capable of grasping and extending it; and this sort of catastrophe is undoubtedly being repeated all about us, as truly significant attainments become lost in the mass of the inconsequential....The summation of human experience is being expanded at a prodigious rate, and the means we use for threading through the consequent maze to the momentarily important item is the same as was used in the days of square-rigged ships." ,[object Object]
Memex
Så funkar...webben
Så funkar...webben Ted Nelson ,[object Object]
1967 XANADU, föregångaren till webben Bill Atkinson  ,[object Object]
Så funkar...webben Grundaren: Tim Berners-Lee ,[object Object]
Många forskare jorden runt bidrog med forskning och rapporter.
Svårt att få dem att använda gemensamt dokumentformat.
Behövde ett system för att hantera information runt forskningen.
Så funkar...webben 1989: "This proposal concerns the management of general information about accelerators and experiments at CERN. It discusses the problems of loss of information about complex evolving systems and derives a solution based on a distributed hypertext system."
Så funkar...webben Krav: ,[object Object]
decentraliserat
länkat Arkitektur: Klient-Server Fick inget direkt gehör.
Så funkar...webben Satte ihop ett eget system.  Baserat på klient-server tillståndslösa accesser länkning till andra dokument/servrar
Så funkar...webben
Så funkar...webben Bestod redan då av de bekanta: ,[object Object]
Ett adressschema (URL)
Ett dokumentformat (HTML)
En server som levererade dokumentet (Webserver)
En klient/Browser med vilken man kunde hämta dokumenten, få dem visade försig och följa länkar i dem. Kallade programmet för WorldWideWeb.
Så funkar...webben Lade upp det publikt 1991 och släppte källkoden. Växte sedan ryktesvägen. National Center for Supercomputing Applications (NCSA) ,[object Object]
Mosaic (Marc Andreesen)
Utökade HTML
Lade till inline bilder.
Så funkar...webben
Så funkar...webben Arkitektur ,[object Object]
Enkelt - "An HTTP daemon is such a simple thing that a simple shell script will often suffice."
Dokumentformatet text
Protokoll i klartext. Låt oss börja med en överblick.
Så funkar...webben
Så funkar...webben URL (Uniform Resource Locator) Var finns det vi söker? Hanteras av IETF RFC1738 (1994) (Uniform Resource Identifiers RFC2396 1997)
Så funkar...webben URL (Uniform Resource Locator) protokoll :// hostname [: portnummer]/resurs[#partid] ,[object Object]
Ger oss ett hostname.
Om inte portnummer är angivet ges det från protokollet
En resurs att hämta.
Så funkar...webben HTTP (HTTPS) ,[object Object]
Hur skall vi hämta resursen? ,[object Object]
RFC 1945 (1.0, 1996, informational)
RFC 2608 (1.1, 1997)
RFC 2616 (1.1 1999)
Så funkar...webben Textbaserat protokoll. ,[object Object]
Format för hur svaret skall se ut.
Standardiserade svarskoder.
Headers
Innehåll
Går bra att köra direkt med telnet.
Så funkar...webben [pra@pra pra]$ telnet localhost 80 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. GET / HTTP/1.0 HTTP/1.1 200 OK Date: Tue, 03 Feb 2004 08:59:25 GMT Server: Apache/1.3.23 (Unix)  (Red-Hat/Linux) mod_jk/1.1.0 mod_python/2.7.6 Python/1.5.2 mod_ssl/2.8.7 OpenSSL/0.9.6b DAV/1.0.3 PHP/4.1.2 mod_perl/1.26 mod_throttle/3.1.2 Last-Modified: Tue, 09 Apr 2002 18:56:58 GMT ETag: "52c045-b4a-3cb3397a" Accept-Ranges: bytes Content-Length: 2890 Connection: close Content-Type: text/html
Så funkar...webben <!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 3.2 Final//EN&quot;> <HTML> <HEAD> <TITLE>Test Page for the Apache Web Server on Red Hat Linux</TITLE> </HEAD> <!-- Background white, links blue (unvisited), navy (visited), red (active) --> <BODY BGCOLOR=&quot;#FFFFFF&quot;> <H1 ALIGN=&quot;CENTER&quot;>Test Page</H1> <P>This page is used to test the proper operation of the Apache Web server after it has been installed.  If you can read this page, it means that the Apache Web server installed at this site is working properly.</P> </BODY> </HTML>
Så funkar...webben Kommandon: ,[object Object]
POST - Bäddar in innehåll i textmeddelandet (för att skicka upp argument, eller t.ex filer)
HEAD - kolla enbart headers.
Så funkar...webben [pra@pra pra]$ telnet localhost 80 Trying 127.0.0.1... Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. HEAD / HTTP/1.0 HTTP/1.1 200 OK Date: Tue, 03 Feb 2004 09:02:49 GMT Server: Apache/1.3.23 (Unix)  (Red-Hat/Linux) mod_jk/1.1.0 mod_python/2.7.6 Python/1.5.2 mod_ssl/2.8.7 OpenSSL/0.9.6b DAV/1.0.3 PHP/4.1.2 mod_perl/1.26 mod_throttle/3.1.2 Last-Modified: Tue, 09 Apr 2002 18:56:58 GMT ETag: &quot;52c045-b4a-3cb3397a&quot; Accept-Ranges: bytes Content-Length: 2890 Connection: close Content-Type: text/html Connection closed by foreign host.
Så funkar...webben Svarskoder - några exempel ,[object Object]
301 Resursen har flyttat permanent till: XXX
303 Se annan (redirect)
401 Autentiering krävs
403 Access förbjuden
404 Sidan inte hittad
500 Internt serverfel
Så funkar...webben Content-Type ,[object Object]
Kan vara annat än text
Här ser vi att det är HTML
Så funkar...webben HTML (Hypertext Markup Language) Hanteras av World Wide Web Consortium (www.w3c.org) ,[object Object]

Contenu connexe

Similaire à Så funkar det (del 3) - webben

Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTMLAnton Tibblin
 
VT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & BootstrapVT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & BootstrapAnton Tibblin
 
Hessian - binärt Web Service-protokoll
Hessian - binärt Web Service-protokollHessian - binärt Web Service-protokoll
Hessian - binärt Web Service-protokollMattias Jiderhamn
 
Välj rätt i teknikdjungeln
Välj rätt i teknikdjungeln Välj rätt i teknikdjungeln
Välj rätt i teknikdjungeln Creuna Sverige
 
HT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLHT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLAnton Tibblin
 
HT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTMLHT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTMLAnton Tibblin
 
HT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTMLHT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTMLAnton Tibblin
 
Internet presentation te12c
Internet presentation te12cInternet presentation te12c
Internet presentation te12cMalte Hellsten
 
Teckenkodning Pa Webben Pt 2
Teckenkodning Pa Webben Pt 2Teckenkodning Pa Webben Pt 2
Teckenkodning Pa Webben Pt 2Lars Gunther
 
HT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLHT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLAnton Tibblin
 
HT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottleHT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottleAnton Tibblin
 
Spbl Fö6 Designprinciper Och Xml
Spbl Fö6   Designprinciper Och XmlSpbl Fö6   Designprinciper Och Xml
Spbl Fö6 Designprinciper Och Xmlbildljuddsv
 
HT17 - DA354A - Webbapplikation
HT17 - DA354A - WebbapplikationHT17 - DA354A - Webbapplikation
HT17 - DA354A - WebbapplikationAnton Tibblin
 
HT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web appHT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web appAnton Tibblin
 
Digital typografi @ Beckmans, december 2015
Digital typografi @ Beckmans, december 2015Digital typografi @ Beckmans, december 2015
Digital typografi @ Beckmans, december 2015Harald Peter Ström
 
Processor klockfrekvens
Processor klockfrekvensProcessor klockfrekvens
Processor klockfrekvenstazh1200
 
VT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSVT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSAnton Tibblin
 
VT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLVT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLAnton Tibblin
 
Mindre och snabbare – Cache tips for WordPress developers
Mindre och snabbare – Cache tips for WordPress developersMindre och snabbare – Cache tips for WordPress developers
Mindre och snabbare – Cache tips for WordPress developersSeravo
 
HT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptHT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptAnton Tibblin
 

Similaire à Så funkar det (del 3) - webben (20)

Introduktion till HTML
Introduktion till HTMLIntroduktion till HTML
Introduktion till HTML
 
VT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & BootstrapVT2018 - DA355A - LocalStorage & Bootstrap
VT2018 - DA355A - LocalStorage & Bootstrap
 
Hessian - binärt Web Service-protokoll
Hessian - binärt Web Service-protokollHessian - binärt Web Service-protokoll
Hessian - binärt Web Service-protokoll
 
Välj rätt i teknikdjungeln
Välj rätt i teknikdjungeln Välj rätt i teknikdjungeln
Välj rätt i teknikdjungeln
 
HT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTMLHT19 - DA156A - Introduktion till HTML
HT19 - DA156A - Introduktion till HTML
 
HT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTMLHT17 - DA156A - Introduktion till HTML
HT17 - DA156A - Introduktion till HTML
 
HT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTMLHT16 - DA156A - Introduktion till HTML
HT16 - DA156A - Introduktion till HTML
 
Internet presentation te12c
Internet presentation te12cInternet presentation te12c
Internet presentation te12c
 
Teckenkodning Pa Webben Pt 2
Teckenkodning Pa Webben Pt 2Teckenkodning Pa Webben Pt 2
Teckenkodning Pa Webben Pt 2
 
HT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTMLHT18 - DA156A - Introduktion till HTML
HT18 - DA156A - Introduktion till HTML
 
HT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottleHT19 - DA354A - Webbprogrammering med bottle
HT19 - DA354A - Webbprogrammering med bottle
 
Spbl Fö6 Designprinciper Och Xml
Spbl Fö6   Designprinciper Och XmlSpbl Fö6   Designprinciper Och Xml
Spbl Fö6 Designprinciper Och Xml
 
HT17 - DA354A - Webbapplikation
HT17 - DA354A - WebbapplikationHT17 - DA354A - Webbapplikation
HT17 - DA354A - Webbapplikation
 
HT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web appHT18 - DA354A - Bottle web app
HT18 - DA354A - Bottle web app
 
Digital typografi @ Beckmans, december 2015
Digital typografi @ Beckmans, december 2015Digital typografi @ Beckmans, december 2015
Digital typografi @ Beckmans, december 2015
 
Processor klockfrekvens
Processor klockfrekvensProcessor klockfrekvens
Processor klockfrekvens
 
VT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSSVT2019 - DA355A - Intro HTML & CSS
VT2019 - DA355A - Intro HTML & CSS
 
VT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTMLVT18 - DA355A/DA344A - Introduktion till HTML
VT18 - DA355A/DA344A - Introduktion till HTML
 
Mindre och snabbare – Cache tips for WordPress developers
Mindre och snabbare – Cache tips for WordPress developersMindre och snabbare – Cache tips for WordPress developers
Mindre och snabbare – Cache tips for WordPress developers
 
HT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScriptHT23 - DA106A - Introduktion till JavaScript
HT23 - DA106A - Introduktion till JavaScript
 

Plus de Peter Antman

Pirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePeter Antman
 
Facilitating the Elephant carpaccio exercise
Facilitating the Elephant carpaccio exerciseFacilitating the Elephant carpaccio exercise
Facilitating the Elephant carpaccio exercisePeter Antman
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story WorkshopPeter Antman
 
Lean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardLean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardPeter Antman
 
Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Peter Antman
 
Stop the line @spotify
Stop the line @spotifyStop the line @spotify
Stop the line @spotifyPeter Antman
 
Tear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesTear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesPeter Antman
 
The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)Peter Antman
 
Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Peter Antman
 
Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Peter Antman
 
EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)Peter Antman
 
Så funkar det (del 1) - word
Så funkar det (del 1) - wordSå funkar det (del 1) - word
Så funkar det (del 1) - wordPeter Antman
 
eXtreme Programming
eXtreme Programming eXtreme Programming
eXtreme Programming Peter Antman
 
SCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean cultureSCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean culturePeter Antman
 
Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Peter Antman
 
Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Peter Antman
 
Kanban at Polopoly
Kanban at PolopolyKanban at Polopoly
Kanban at PolopolyPeter Antman
 

Plus de Peter Antman (19)

Pirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guidePirateship - growing a great crew: workshop facilitation guide
Pirateship - growing a great crew: workshop facilitation guide
 
Facilitating the Elephant carpaccio exercise
Facilitating the Elephant carpaccio exerciseFacilitating the Elephant carpaccio exercise
Facilitating the Elephant carpaccio exercise
 
User Story Workshop
User Story WorkshopUser Story Workshop
User Story Workshop
 
Lean Canvas - a hypotheses board
Lean Canvas - a hypotheses boardLean Canvas - a hypotheses board
Lean Canvas - a hypotheses board
 
Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014Strong decisions with consensus, Agila Sverige 2014
Strong decisions with consensus, Agila Sverige 2014
 
Lean Dot Game
Lean Dot Game Lean Dot Game
Lean Dot Game
 
Stop the line @spotify
Stop the line @spotifyStop the line @spotify
Stop the line @spotify
 
Tear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenchesTear Down the Pyramid Again - Agile Management from the trenches
Tear Down the Pyramid Again - Agile Management from the trenches
 
Piemonte vin
Piemonte vinPiemonte vin
Piemonte vin
 
The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)The Bespoke Software Product Factory (2007)
The Bespoke Software Product Factory (2007)
 
Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)Java 1.5 - whats new and modern patterns (2007)
Java 1.5 - whats new and modern patterns (2007)
 
Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)Java Server Faces 1.2 presented (2007)
Java Server Faces 1.2 presented (2007)
 
EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)EJB 3.0 Walkthrough (2006)
EJB 3.0 Walkthrough (2006)
 
Så funkar det (del 1) - word
Så funkar det (del 1) - wordSå funkar det (del 1) - word
Så funkar det (del 1) - word
 
eXtreme Programming
eXtreme Programming eXtreme Programming
eXtreme Programming
 
SCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean cultureSCRUM at Polopoly - or building a lean culture
SCRUM at Polopoly - or building a lean culture
 
Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5Threads and concurrency in Java 1.5
Threads and concurrency in Java 1.5
 
Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!Lägg ner utvecklingssamtalen!
Lägg ner utvecklingssamtalen!
 
Kanban at Polopoly
Kanban at PolopolyKanban at Polopoly
Kanban at Polopoly
 

Så funkar det (del 3) - webben