Zhrnutie na Základy informatiky a IT bezpečnosti
Základy informatiky a IT bezpečnosti: Komplexný sprievodca
Úvod
Webové servery a webové technológie tvoria základ moderného internetu. Tento materiál vysvetlí, čo je webový server, aké existujú typy serverov a softvérov, ako prebieha komunikácia medzi klientom a serverom a základné princípy CSS pre úpravu vzhľadu webu. Cieľom je, aby si po prečítaní vedel/-a pochopiť základné pojmy, praktické použitia a rozdiely medzi technológiami.
Definícia: Webový server je hardvérové alebo softvérové zariadenie, ktoré prijíma požiadavky od klientov, spracúva ich a odpovedá odoslaním dát cez protokol HTTP alebo HTTPS.
1. Webový server
1.1 Základný princíp
- Klient (webový prehliadač) odošle HTTP požiadavku, napr.
GET /index.html HTTP/1.1. - Server nájde požadovaný súbor alebo vygeneruje odpoveď pomocou server-side skriptovania.
- Server vráti odpoveď, napr.
HTTP/1.1 200 OK+ obsah HTML. - Klient zobrazí obsah.
Definícia: HTTP (HyperText Transfer Protocol) je protokol pre prenos dokumentov na webe; HTTPS je jeho zabezpečená verzia pomocou šifrovania.
1.2 Hardvér vs. softvér
| Typ | Popis | Príklady |
|---|---|---|
| Hardvérový webový server | Fyzický počítač určený na hosťovanie | Rack servery v dátovniach |
| Softvérový webový server | Program bežiaci na hardvéri, spracúva požiadavky | Apache, Nginx, Microsoft IIS, LiteSpeed |
1.3 Najznámejšie softvérové servery (porovnanie)
| Server | Výhody | Typické použitie |
|---|---|---|
| Apache HTTP Server | Veľká komunita, modulárny | Shared hosting, legacy aplikácie |
| Nginx | Vysoký výkon pri veľkej záťaži | Reverzný proxy, statický obsah |
| Microsoft IIS | Integrácia do Windows Server | Aplikácie na Windows platforme |
| LiteSpeed | Vysoký výkon, komerčné funkcie | Výkonný hosting, caching |
1.4 Server-side vs. client-side
- Klient spracuje: HTML, CSS, JavaScript (renderovanie, interakcie).
- Server spracuje: PHP, Python, ASP.NET atď. (vykonávanie kódu, prístup do DB).
Príklad: Pri návšteve stránky s vyhľadávaním server spustí PHP skript, ktorý sa pripojí k databáze MySQL a vráti výsledky vo forme HTML; prehliadač potom vykreslí výsledok a JavaScript môže pridať interaktivitu.
1.5 Spolupráca s databázou
- Bežné databázy: MySQL, PostgreSQL.
- Server vykonáva dotazy, spracuje výsledky a vygeneruje HTML alebo JSON odpoveď.
2. CSS – Cascading Style Sheets
2.1 Čo je CSS
Definícia: CSS je jazyk na popis vzhľadu HTML dokumentov: farby, písmo, rozloženie, animácie a responzívny dizajn.
2.2 Spôsoby použitia
- Inline – štýl priamo v HTML značke (napr.
<p style="color:red">), nevhodné pre veľké projekty. - Interné – v hlavičke dokumentu (
<style>), použiteľné pre jednu stránku. - Externé – v samostatnom
.csssúbore, ideálne pre údržbu a pre viac stránok.
Príklad (externé CSS):
- Súbor
styles.cssobsahuje pravidlá, ktoré načíta HTML dokument cez<link rel="stylesheet" href="styles.css">.
2.3 Základné funkcie CSS
- Zmena farby, veľkosti a typu písma
- Rozloženie pomocou Grid a Flexbox
- Prechody, transformácie a animácie
- Responzívny dizajn pomocou media queries
2.4 Prečo oddeliť HTML a CSS
- Oddelenie štruktúry a vzhľadu zlepšuje čitateľnosť a opakovateľnosť.
- Externé CSS znižuje duplicitný kód a uľahčuje údržbu pri veľkých projektoch.
3. Praktické príklady a reálne použitia
3.1 Jednoduchý scenár: statická stránka
- Súbor
index.htmluložený na serveri. - Prehliadač pošle
GET /index.html. - Server vráti
200 OKa obsah HTML. - Prehliadač načíta
styles.cssa vykreslí stránku.
3.2 Dynamická stránka s databázou
- Používateľ odošle formulár.
- Server-side skript (napr. PHP) spracuje dáta a spustí SQL dotaz na MySQL.
- Server vygen
Už máš účet? Prihlásiť sa
Webové servery a technológie
Klíčové pojmy: Webový server prijíma požiadavky a odpovedá cez HTTP/HTTPS, Hardvérový server je fyzický, softvérový je program (Apache, Nginx, IIS, LiteSpeed), Klient posiela požiadavku napr. GET /index.html HTTP/1.1 a server vracia HTTP odpoveď, Server-side jazyky (PHP, Python, ASP.NET) generujú obsah a komunikujú s databázou, Client-side technológie (HTML, CSS, JS) vykresľujú a spracúvajú obsah v prehliadači, Externé CSS súbory zlepšujú údržbu a opakovateľnosť štýlov, Nginx sa často používa ako reverzný proxy a pre vysokú záťaž, Grid a Flexbox sú moderné nástroje CSS pre rozloženie, Responzívny dizajn sa zabezpečuje pomocou media queries, Praktický tok: klient pošle požiadavku, server spracuje a vráti obsah