Zhrnutie na Kľúčové koncepty informatiky
Kľúčové Koncepty Informatiky: Zálohovanie, Web, Hacking a CSS
Úvod
Webové servery a webové technológie tvoria základ moderného internetu. Tento materiál vysvetľuje, čo je webový server, ako funguje komunikácia medzi klientom a serverom, prehľad bežných serverových softvérov, a základné informácie o CSS ako technológii na úpravu vzhľadu stránok. Cieľ: poskytnúť jasné, praktické poznatky vhodné pre samostatné štúdium.
Definícia: Webový server je hardvérové alebo softvérové zariadenie, ktoré prijíma požiadavky od klientov, spracováva ich a odpovedá odoslaním dát späť klientovi pomocou protokolov ako HTTP alebo HTTPS.
1. Webový server
Základná úloha
- Prijíma požiadavky od klientov (napr. webový prehliadač).
- Spracúva požiadavky (stále súbory alebo dynamicky generovaný obsah).
- Odpovedá dátami (HTML, CSS, JS, obrázky, API odpovede).
Typy webových serverov
| Typ | Popis | Príklad použitia |
|---|---|---|
| Hardvérový webový server | Fyzický počítač určený na hosťovanie služieb | Dedikovaný server v dátovom centre |
| Softvérový webový server | Program, ktorý spravuje HTTP/HTTPS požiadavky | Apache, Nginx, Microsoft IIS, LiteSpeed |
Najznámejšie softvéry
- Apache HTTP Server: najrozšírenejší open-source server, veľmi konfigurovateľný.
- Nginx: výkonný, efektívny pri vysokom zaťažení, často používaný ako reverse proxy.
- Microsoft IIS: integrovaný so systémom Windows Server.
- LiteSpeed: komerčné riešenie optimalizované pre rýchlosť.
Ako prebieha základná komunikácia
- Klient pošle požiadavku: napr. GET /index.html HTTP/1.1.
- Server vyhľadá požadovaný súbor v adresári alebo spustí server-side skript.
- Server odpovie stavovým kódom (napr. 200 OK) a obsahom.
- Klient (prehliadač) vykreslí obsah.
Príklad: Klient zaškrtne adresu a prehliadač pošle požiadavku GET, server nájde súbor index.html a vráti ho spolu so stavovým kódom 200 OK.
Server-side vs client-side spracovanie
- Client-side (v prehliadači): HTML, CSS, JavaScript – vykresľovanie, interaktivita.
- Server-side (na serveri): PHP, Python, ASP.NET – generovanie dynamického obsahu, prístup do databázy.
Spolupráca s databázou
- Webový server často komunikuje s databázou (napr. MySQL, PostgreSQL) na ukladanie a čítanie dát pre dynamické stránky a aplikácie.
2. CSS – Cascading Style Sheets
Čo je CSS
Definícia: CSS je jazyk určený na popis vzhľadu HTML dokumentu; definuje farby, písmo, rozloženie a vizuálne efekty.
Základné použitie
- Mení farby, veľkosti a typy písma.
- Kontroluje rozloženie pomocou grid a flexbox.
- Umožňuje animácie, prechody a responzívne štýly pomocou media queries.
Spôsoby zahrnutia CSS
- Inline – priamo v HTML značke (nevhodné pre veľké projekty).
- Interné – v hlavičke dokumentu cez <style> (užitočné pre malé stránky).
- Externé – v samostatnom .css súbore (najlepšia prax pre udržiavateľnosť).
Príklad externého CSS: link rel="stylesheet" href="styles.css"
Výhody používania CSS
- Oddelenie štruktúry (HTML) a vzhľadu (CSS).
- Jednoduchšie opakované použitie štýlov.
- Ľahšia údržba veľkých projektov.
- Možnosť responzívneho dizajnu pomocou media queries.
3. Praktické príklady a situácie
Jednoduchý request/response
- Požiadavka: GET /about.html HTTP/1.1
- Server: vyhľadá súbor about.html, vráti ho so stavom 200 OK.
Dynamická stránka s PHP
- Klient žiada /profile.php?id=5
- Server spustí PHP skript, ktorý načíta z DB údaje pre užívateľa s id $5 a vráti HTML s vloženými dátami.
Použitie Nginx ako reverse proxy
- Nginx prijíma všetky externé požiadavky, smeruje statické súbory priamo a dynamické požiadavky posiela na backend (napr. Node.js alebo Apache).
Porovnanie Apach
Už máš účet? Prihlásiť sa
Webové servery a technológie
Klíčová slova: Webové servery a webové technológie, Zálohovanie dát, Etický hacking
Klíčové pojmy: Webový server prijíma, spracúva a odpovedá na HTTP/HTTPS požiadavky, Existujú hardvérové aj softvérové webové servery (Apache, Nginx, IIS, LiteSpeed), Typický request: GET /index.html HTTP/1.1 následovaný odpoveďou 200 OK, Client-side technológie: HTML, CSS, JS — vykresľuje prehliadač, Server-side technológie: PHP, Python, ASP.NET — generujú dynamický obsah, Nginx je event-driven a vhodný pre vysoké zaťaženie; Apache je flexibilný cez .htaccess, CSS: tri spôsoby použitia — inline, interné, externé; externe je najlepšie, Používajte HTTPS (TLS) na zabezpečenie komunikácie, Grid a flexbox sa často kombinujú: grid pre celkové rozloženie, flexbox pre zarovnanie, Server často komunikuje s databázami ako MySQL alebo PostgreSQL, Aktualizujte serverový softvér a validujte vstupy proti SQL injection a XSS