Fogalma • A világháló (World Wide Web) az interneten működő, egymással hiperlinkekkel (hivatkozásokkal) összekötött dokumentumok rendszere. • Hiperhivatkozás , (link, élő kapocs, kapcsolódási pont), a hiperszöveges és a hipermediális rendszerek elemeit, objektumait összekötő eszköz. Értelmezéséhez böngészőprogramra van szükség. – A hiperszöveg (hipertext) egy nemlineáris, sokközpontú, digitális közegben hálózatosan épülő, nyitott vagy zárt (szöveg)rendszer. – A hiperszöveg kiterjesztése a hipermédia, amikor a szöveg pl.: audiovizuális és egyéb elemekkel bővül. A hipermédia a rendszer multimédiális jellegét hangsúlyozza a hipertext szövegközpontúságával szemben.
• A hypertext olyan interaktív dokumentum, mely linkeket biztosít az olvasónak a szövegek közti átjárhatóság céljából. Ezeken a linkeken tovább lehet haladni más szövegek felé. • A világhálón a hypertextek HTML (hypertext markup language) nyelven vannak rögzítve.
• A rendszert (a webet) böngészőprogram segítségével lehet elérni, amely képes megjeleníteni az egyes dokumentumokat, a weblapokat (honlapokat). • A felhasználó a weblapokon található hiperlinkek segítségével további lapokat kérhet le a webszerverről, amelyeken újabb hiperlinkek lehetnek.
Története • A Web alapelveit Tim Berners-Lee, a CERN részecskefizikai kutatóközpont munkatársa dolgozta ki 1989-ben. • Eredeti célja a különböző intézményekben világszerte dolgozó kutatók közötti automatizált információmegosztás volt. Az alapötlet egy globális információs hálózat létrehozása volt a számítógépek, a számítógépes hálózat és a hipertext képességeinek ötvözésével. • 1993. április 30-án a CERN bejelentette, hogy a web mindenki számára szabad és ingyenes – nincs szerzői jogdíj. • Még ugyanebben az évben elindult az első magyarországi webszerver, a www.fsz.bme.hu.
Első magyar webszerver
CERN
WEB atyja • Sir Timothy John Berners-Lee, a HTML, a HTTP és több hasonló protokoll kifejlesztője és a World Wide Web Consortium vezetője, azé a cégé, mely a Web további fejlődését irányítja.
A web szabványai • A Uniform Resource Locator (URL), leírja, milyen egyedi „címmel” (hol van az oldal) kell rendelkeznie az egyes weboldalaknak. • A hipertext átviteli protokoll (Hyper Text Transfer Protocol, HTTP), megadja, hogyan küld egymásnak információt a böngésző és a webkiszolgáló. • A hipertext leíró nyelv (Hyper Text Markup Language, HTML), az információkódolás eljárása, mellyel az oldal sokféle eszközön megjeleníthetővé válik. • CSS – stílusok leírását biztosító nyelv; HTML kiegészítője. Berners-Lee jelenleg a World Wide Web Consortiumnál dolgozik, amely ezeket a szabványokat fejleszti és karbantartja, valamint továbbiakat is, melyekkel a számítógépek hatékonyan tudnak információkat tárolni és küldeni.
URI • Az URI (Uniform Resource Identifier, egységes erőforrás-azonosító) egy rövid karaktersorozat, amelyet egy webes erőforrás azonosítására használunk. • Az URI az erőforrást kétféleképp azonosíthatja: hely szerint (URL) vagy név szerint (URN). – Az URL olyan URI, amely azzal határozza meg az erőforrást, hogy hogyan és hol lehet azt elérni. – Az URN-re példa lehet a következő: urn:isbn:0-395-363411. Ez egy olyan URI, amely egy könyvet azonosít az ISBNadata alapján. Ezzel az URN-nel azonosítottuk a könyvet anélkül, hogy bármit mondtunk volna a helyéről vagy az elérhetőségéről.
URL • A webcím, más néven URL (egységes erőforrás helyazonosító), az interneten megtalálható egyes erőforrások (például szövegek, képek) szabványosított címe. • A webcím egyetlen címben összefoglalja a dokumentum megtalálásához szükséges négy alapvető információt: – a protokollt, amit a célgéppel való kommunikációhoz használunk; – a szóban forgó gép (webszerver) vagy tartomány nevét; – a hálózati port számát, amin az igényelt szolgáltatás elérhető a célgépen, webszerveren; – a fájlhoz vezető elérési utat a célgépen, webszerveren belül.
URL példa • http://hu.wikipedia.org:80/wiki • Ennek részei: – A http a használandó protokoll. A protokoll neve után kettőspont (:) írandó. – A hu.wikipedia.org a célgép tartományneve. Ez elé két perjel (//) írandó. (Emögött valójában egy IP cím áll.) – A 80 a célgép azon hálózati portszáma, amin kérésünket várja; ez elé kettőspont (:) írandó. Ezt a részt gyakran teljesen elhagyhatjuk, például esetünkben a http protokoll alapértelmezett portszáma a 80. – A /wiki a kért elérési út a célgépen. Ez a rész mindig a perjellel (/) kezdődik.
• A webcímek egyéb részeket is tartalmazhatnak, http esetében például az elérési út után, egy kérdőjel (?) mögé helyezve keresési kérdés szerepelhet: http://hu.wikipedia.org/w/wiki.phtml?title=Bit&action=history
• Az elérési út után, attól egy kettős kereszttel (#) elválasztva szerepelhet a hiperszöveg egy részére hivatkozó azonosító: http://hu.wikipedia.org/wiki/1999#Események
URL rövidítése - TinyURL
HTTP • A HTTP (Hyper Text Transfer Protocol) egy információátviteli protokoll elosztott, kollaboratív, hipermédiás, információs rendszerekhez. • A HTTP egy kérés-válasz alapú protokoll kliens (böngésző) és szerver (webszerver) között. • Tim Berners-Lee és csapata alkották meg, jelenlegi verziója (1.1) 1999-ben jött létre.
HTTP kérés: böngészőtől szerver felé • Egy HTTP kérés első sora mindig ,,METÓDUS ERŐFORRÁS VERZIÓ" alakú, például így: • GET /images/logo.gif HTTP/1.1
• Ezt a sort követheti tetszőleges számú header sor ,,HEADER: ÉRTÉK" alakban, például így: • Accept: text/plain,text/html • Accept-Language: en
• A header sorok végét egy üres sor jelzi, melyet az opcionális üzenettest követ.
• HTTP protokoll 8 féle metódust definiál. A metódusok a megadott erőforráson végzendő műveletet határozzák meg. Pl.: – GET A megadott erőforrás letöltését kezdeményezi. – POST Feldolgozandó adatot küld fel a szerverre. Például HTML űrlap tartalmát. Az adatot az üzenettest tartalmazza. – PUT Feltölti a megadott erőforrást. – DELETE Törli a megadott erőforrást.
HTTP válasz: szervertől a böngésző felé • A HTTP válasz első sora a státuszsor, amely ,,VERZIÓ STÁTUSZKÓD INDOKLÁS" alakú. A státuszkód egy három számjegyű szám, az indoklás egy üzenet valamilyen emberi nyelven, pl.: – HTTP/1.1 200 OK – HTTP/1.1 404 Not Found • A státuszkódok jelentését az RFC 2616 tartalmazza részletesen.
• A státuszsor után header sorok következhetnek a HTTP kérésnél látott módon ,,HEADERNÉV: ÉRTÉK" alakban. Például így: – Date: Mon, 23 May 2005 22:38:34 GMT – Server: Apache/1.3.27 (Unix) (Red-Hat/Linux) – Last-Modified: Wed, 08 Jan 2003 23:11:55 GMT – Accept-Ranges: bytes – Content-Length: 438 – Content-Type: text/html; charset=UTF-8
A HTTP egy állapot nélküli protokoll: a szervernek nem kell nyilvántartania felhasználói információkat az egyes kérések kiszolgálása között. A HTTP eredetileg nem arra készült, hogy felhasználók jelentkezzenek be rajta keresztül szerverekre és ott munkamenetet indítsanak. Történetileg azonban úgy alakult, hogy a HTTP terjedt el széles körben más, felhasználói bejelentkezést támogató protokollok helyett, ami arra kényszerítette a webfejlesztőket, hogy a HTTP-t mintegy megerőszakolva, kerülőutakon járva tárolják a felhasználók munkamenetállapotait. Egy tipikus megoldás cookie-kban tárolni a felhasználói állapotot.
Biztonságos HTTP - HTTPS • A HTTPS séma szintaktikailag megegyezik a http-sémával, de jelzi a böngészőnek, hogy használni kell az SSL/TSL titkosító réteget az adatforgalom védelme érdekében. Az SSL különösen célszerű a HTTP esetében, mert akkor is nyújt némi védelmet, ha csak a kommunikáció egyik oldala hitelesített. Az internetes HTTP-tranzakciók esetében jellemzően csak a szerveroldal hitelesített.
HTML • A HTML (Hyper Text Markup Language = hiperszöveges jelölőnyelv) egy leíró nyelv, melyet weboldalak szoftver független tárolásához, készítéséhez fejlesztettek ki, és mára internetes szabvánnyá vált a W3C (World Wide Web Consortium) támogatásával. • Az aktuális változata a 4.01, mely az SGML általános jelölőnyelv egy konkrét alkalmazása, már kész a HTML5 is, de még csak vázlat.
• HTML általában szöveges állományokban található meg olyan számítógépeken, melyek az internethez kapcsolódnak. Ezek az állományok tartalmazzák azokat az információkat, amelyek a megjelenítő programnak (böngészők) leírják, hogyan kell megjeleníteni illetve feldolgozni az adott állomány tartalmát. Megjelenítő program lehet pl.: egy webböngésző program.
Négyfajta szimbólum (leíró elem) található meg a HTML-ben: – strukturális elemek, amelyek leírják az adott szöveg helyét, elrendezését az oldal szerkezetében, például
Téma 1
mint első szintű címsor (alcím). – prezentációs szimbólumok, amelyek leírják, hogy az adott szöveg hogyan nézzen ki: például vastag vastag kinézetet eredményez. (Ez a forma azonban ma már elavultnak számít, helyette a CSS használata javasolt, ugyanis a legújabb irányelv szerint szét kell választani a tartalmat (amit a HTML kódol) és a formát (amit CSS-ben szokás kódolni), és ezáltal mindenki számára elérhetővé tehetőek a weblapok: felolvasó gépeknek, amit a gyengén látók használnak, szöveges böngészőknek, és nyomtatóbarát verziót is könnyebb készíteni.) – hiperszöveg (hypertext) elemek, amelyek segítségével kapcsolat létesíthető a dokumentum egyes elemei és más dokumentumok között (például a Wikipedia a Wikipedia szót mint egy kapcsolatot a megadott URL-hez jeleníti meg) – eszköz elemek, amelyek segítségével gombok, listák, beviteli mezők hozhatók létre.
Egy HTML állomány három fő részre bontható: • A Dokumentum Típus Definíció az állomány legelején, ami a használni kívánt DTD-t adja meg, pl: • a HTML fejléc , ami technikai és dokumentációs adatokat tartalmaz, amelyeket az internet böngésző nem jelenít meg, tehát átlag felhasználó ezeket nem látja és • a HTML törzs , amely a megjelenítendő információkat tartalmazza.
• Egy HTML dokumentum alapértelmezésként ISO-88591, azaz nyugat-európai kódolást használ. Gyakran előforduló hiba, hogy nincs beállítva a charset paraméter a fejléc content attribútumában, annak ellenére, hogy a dokumentum nem nyugat-európai kódolású szöveget tartalmaz. • Akármilyen kódolást használ is egy HTML dokumentum, bármilyen Unicode karakter megjeleníthető a szövegben annak UCS kódjával „” és „;” jelek között. Például a magyar kis „ő” betű UCS kódja a decimális 337 (vagy hexadecimális 151), ezért függetlenül a használt kódolástól, a HTML dokumentumban elhelyezett ő vagy ő mindig az „ő” betűt fogja megjeleníteni.
HTML 5 • HTML5 a következő, jelentősen átdolgozott változata a HTML-nek, a web fő jelölőnyelvének. Egyik fő tervezési célja, hogy a webes alkalmazásokhoz ne legyen szükség pluginek (pl. Adobe Flash) telepítésére. • HTML5-ben lehetőség van audio és zenefájlok beillesztésére, erre a célra külön tagek vannak (