Backend/Server

HTTPS

Co je to HTTPS?

HTTPS (Hypertext Transfer Protocol Secure) je zabezpečená verze protokolu HTTP, která šifruje komunikaci mezi webovým prohlížečem a serverem. Díky šifrování nemůže nikdo po cestě odposlouchávat nebo modifikovat data, která si vyměňujete s webovou stránkou. HTTPS je dnes standardem pro všechny moderní weby a je klíčové pro důvěru uživatelů i pozici ve vyhledávačích.

Rozdíl mezi HTTP a HTTPS spočívá v jediném písmenu "S", které znamená "Secure" (zabezpečené). Zatímco HTTP přenáší data jako prostý text, HTTPS využívá šifrování, které chrání vaše údaje před odposlechem, změnou nebo krádeží během přenosu.

Jak HTTPS funguje?

HTTPS využívá SSL/TLS certifikáty k šifrování dat. Když navštívíte web přes HTTPS, prohlížeč nejprve ověří identitu serveru pomocí digitálního certifikátu. Tento certifikát vydává důvěryhodná certifikační autorita (CA). Po ověření proběhne "handshake", při kterém si prohlížeč a server dohodnou šifrovací klíče.

Celý proces trvá jen zlomky sekundy a probíhá automaticky na pozadí. Výsledkem je šifrované spojení, kde jsou všechna data převedena do nečitelné podoby pro kohokoli kromě zamýšleného příjemce. To znamená, že i když útočník odchytí data mezi vámi a serverem, nemůže je přečíst ani změnit.

SSL/TLS certifikáty

SSL certifikát (dnes technicky TLS certifikát) je digitální dokument, který ověřuje identitu webu a umožňuje šifrované připojení. Certifikát obsahuje informace o majiteli domény, veřejný šifrovací klíč a digitální podpis certifikační autority.

Existuje několik typů certifikátů: Domain Validated (DV) – základní certifikát ověřující jen vlastnictví domény, získáte jej během minut zdarma (např. Let's Encrypt); Organization Validated (OV) – ověřuje i existenci organizace; Extended Validation (EV) – nejpřísnější ověření. Pro většinu webů stačí DV certifikát od Let's Encrypt, který nabízí většina hostingů zdarma.

Proč je HTTPS důležitý?

  • Bezpečnost uživatelských dat

  • HTTP (nešifrovaný protokol) přenáší data v otevřené podobě. Pokud vyplníte formulář na HTTP stránce, hesla, čísla kreditních karet nebo osobní údaje putují internetem jako prostý text. Kdokoli s přístupem k síťové infrastruktuře (např. na veřejné WiFi) může tato data odposlouchávat.

  • Důvěryhodnost a značka "Zabezpečeno"

  • HTTPS (šifrovaný protokol) všechna data šifruje. I kdyby je někdo odchytil, vidí pouze nesmyslnou šifrovanou sekvenci znaků. Moderní prohlížeče jako Chrome nebo Firefox označují HTTP stránky jako "Nezabezpečené" a varují uživatele před zadáváním citlivých informací. Vizuální rozdíl je jednoduchý: HTTPS stránky zobrazují v adresním řádku zámek a začínají "https://".

  • HTTPS jako ranking faktor v SEO

  • Google od roku 2014 oficiálně používá HTTPS jako ranking faktor v rámci SEO optimalizace. Weby s HTTPS mají mírnou výhodu před HTTP konkurencí. Kromě toho Chrome a další prohlížeče označují HTTP stránky jako nebezpečné, což výrazně snižuje důvěru návštěvníků a zvyšuje bounce rate (míru okamžitého opuštění).

    HTTPS také pozitivně ovlivňuje konverzní poměr – návštěvníci mají větší důvěru k zabezpečeným webům a jsou ochotnější vyplnit formulář nebo provést nákup. Podle studií může přechod na HTTPS zvýšit konverze až o 10-15 %.

  • Rychlejší protokoly (HTTP/2, HTTP/3)

  • HTTPS také umožňuje využít moderní webové technologie jako HTTP/2, service workers nebo geolokaci, které vyžadují zabezpečené spojení. Bez HTTPS nemůžete zobrazit notifikace v prohlížeči, využít progresivní webové aplikace (PWA) nebo získat přístup k některým API prohlížeče.

    HTTP/2 protokol, který funguje výhradně přes HTTPS, přináší výrazné zlepšení výkonu webu – multiplexing umožňuje současné stahování více souborů přes jedno připojení, server push posílá data předem, než si je prohlížeč stihne vyžádat, a komprese hlaviček snižuje datovou režii. Nástupce HTTP/3 je ještě rychlejší díky použití protokolu QUIC.

Jak poznat zabezpečené připojení?

Zabezpečené HTTPS spojení poznáte podle několika znaků: Zámek v adresním řádku – ikona zámku vedle URL adresy; "https://" na začátku URL – všimněte si "s" na konci; bez varování – prohlížeč nezobrazuje žádné bezpečnostní upozornění.

Kliknutím na zámek zobrazíte detaily certifikátu včetně toho, komu byl vydán a kým. To vám pomůže rozpoznat i phishingové stránky, které sice mohou mít HTTPS, ale certifikát je vydán na podezřelou doménu. HTTPS tedy chrání komunikaci, ale nezaručuje, že web je bezpečný – vždy ověřte správnost domény.

Jak přejít z HTTP na HTTPS?

  • 1. Získání SSL certifikátu

  • První krok je získat SSL certifikát od důvěryhodné certifikační autority. Většina moderních hostingů nabízí bezplatné certifikáty od Let's Encrypt s automatickým obnovením. Let's Encrypt je certifikační autorita podporovaná velkými technologickými společnostmi (Google, Mozilla, Facebook), která poskytuje certifikáty zdarma a díky automatickému obnovování nemusíte řešit vypršení platnosti.

  • 2. Instalace certifikátu na hosting

  • Certifikát musí být nainstalován na vašem webovém serveru. U většiny hostingů proběhne instalace automaticky jedním kliknutím v administračním panelu (cPanel, Plesk). Po instalaci server začne komunikovat přes šifrované spojení na portu 443 místo standardního HTTP portu 80.

  • 3. Nastavení redirectů

  • Nastavte 301 přesměrování z HTTP na HTTPS verze všech stránek. To zajistí, že návštěvníci i vyhledávače budou automaticky přesměrováni na zabezpečené verze. Redirect můžete nastavit v .htaccess souboru (Apache) nebo v konfiguraci serveru (Nginx). Důležité je použít právě 301 redirect, protože signalizuje vyhledávačům trvalý přesun.

  • 4. Aktualizace interních odkazů

  • Projděte web a aktualizujte všechny interní odkazy, aby používaly HTTPS místo HTTP. To zahrnuje odkazy v navigaci, obsahu, obrázcích a CSS souborech. Ideálně použijte relativní odkazy (např. "/sluzby" místo "http://example.com/sluzby"), které fungují automaticky pro obě verze.

  • 5. Testování a monitoring

  • Po přechodu otestujte web na mixed content (HTTP obsah na HTTPS stránce), aktualizujte sitemap.xml a informujte Google Search Console o změně. Monitorujte případné chyby v následujících týdnech. Mixed content znamená, že HTTPS stránka načítá některé zdroje (obrázky, CSS, JavaScript) přes nezabezpečené HTTP – prohlížeč takové stránky varuje jako částečně nezabezpečené.

Časté problémy s HTTPS a jejich řešení

  • Mixed Content Warning

  • Nejčastější problém po přechodu na HTTPS je mixed content – situace, kdy HTTPS stránka obsahuje odkazy na HTTP zdroje (obrázky, CSS, JavaScript, fonty). Prohlížeč pak zobrazuje varování a může blokovat načítání nezabezpečených zdrojů. Řešení: projděte zdrojový kód stránky a změňte všechny http:// odkazy na https:// nebo použijte protokol-relativní odkazy (//example.com/style.css).

  • Neplatný nebo vypršený certifikát

  • SSL certifikáty mají omezenou platnost (obvykle 90 dní u Let's Encrypt, 1 rok u placených). Po vypršení se stránka stává nedostupnou s chybovou hláškou. Moderní hostingy nabízejí automatické obnovování certifikátů, ale je důležité mít nastavený monitoring, který vás upozorní, pokud se obnovení nezdaří.

  • Problémy s redirecty

  • Špatně nastavené přesměrování může způsobit redirect loop (nekonečná smyčka přesměrování) nebo přesměrování na neexistující stránky. Vždy testujte všechny varianty URL (s www/bez www, koncové lomítko) a ujistěte se, že všechny vedou na správnou HTTPS verzi.

  • CDN a HTTPS

  • Pokud používáte CDN (Content Delivery Network), ujistěte se, že i CDN podporuje HTTPS. Většina moderních CDN služeb (Cloudflare, AWS CloudFront, Fastly) nabízí bezplatné SSL certifikáty a automatickou konfiguraci. Bez HTTPS na CDN budete mít problémy s mixed content.

HTTPS a výkon webu

Existuje mylná představa, že HTTPS zpomaluje web. Pravdou je pravý opak – HTTPS je předpokladem pro moderní webové technologie, které weby výrazně zrychlují:

  • HTTP/2 a HTTP/3

  • novější protokoly fungují výhradně přes HTTPS a přinášejí až 50% zrychlení načítání stránky

  • Brotli komprese

  • pokročilá komprese textu, kterou prohlížeče podporují pouze přes HTTPS

  • Server Push

  • server může poslat zdroje (CSS, JS) předem, než si je prohlížeč vyžádá

  • Service Workers

  • umožňují progresivní webové aplikace (PWA) s offline funkcionalitou

Moderní procesory mají hardwarovou akceleraci pro šifrování, takže výkonnostní dopad šifrování je naprosto zanedbatelný – obvykle pod 1 %. Výhody HTTP/2 a dalších technologií tento minimální overhead výrazně převyšují.

HTTPS a GDPR

GDPR (General Data Protection Regulation) vyžaduje, aby osobní údaje byly chráněny "vhodnými technickými opatřeními". HTTPS je základním bezpečnostním opatřením, které chrání osobní údaje během přenosu. Pokud váš web zpracovává jakékoli osobní údaje (jména, e-maily, adresy), HTTPS není jen doporučení, ale nutnost pro splnění GDPR.

Absence HTTPS může být považována za porušení GDPR, protože data uživatelů nejsou dostatečně chráněna. To může vést k pokutám až do výše 4 % ročního obratu společnosti nebo 20 milionů eur.

Nejčastější otázky o HTTPS

Je HTTPS povinný pro každý web? Rozbalit

HTTPS není ze zákona povinný pro všechny weby, ale je naprosto nezbytný pro weby, které zpracovávají citlivá data – přihlašovací údaje, platební informace, osobní údaje. Google Chrome od roku 2018 označuje všechny HTTP weby jako "nezabezpečené", což odrazuje návštěvníky. Navíc HTTPS je ranking faktorem – Google preferuje zabezpečené weby ve výsledcích vyhledávání. Pro moderní web je HTTPS tedy standard, ne volba.

Kolik stojí SSL certifikát? Rozbalit

Ceny SSL certifikátů se pohybují od 0 Kč (zdarma od Let's Encrypt) až po tisíce korun ročně u EV certifikátů pro e-commerce. Pro většinu běžných webů postačí certifikát zdarma od Let's Encrypt, který je důvěryhodný a plně funkční. Placené certifikáty nabízejí rozšířenou validaci, vyšší pojištění a support.

Zpomalí HTTPS můj web? Rozbalit

Ne, naopak! Moderní HTTPS využívá protokoly HTTP/2 a HTTP/3, které jsou rychlejší než HTTP. Šifrování má dnes zanedbatelný výkon díky optimalizaci serverů. Web na HTTPS je často rychlejší díky možnosti využít pokročilé funkce jako server push a multiplexing.

Ztratím SEO pozice při přechodu na HTTPS? Rozbalit

Ne, pokud přechod provedete správně. HTTPS je ranking faktor, takže přechod vám pozice spíše pomůže. Klíčové je nastavit 301 redirecty z HTTP na HTTPS, aktualizovat sitemap.xml a informovat Google Search Console o změně. Krátkodobě může nastat drobný pokles během indexace, ale rychle se vrátí.

Co znamená zámek v adresním řádku? Rozbalit

Zámek v prohlížeči signalizuje, že web používá platný SSL certifikát a komunikace je šifrovaná. Zelený zámek znamená, že data nelze odposlouchávat třetí stranou. Když zámek chybí nebo je přeškrtnutý, prohlížeč varuje před nezabezpečeným připojením. Pro uživatele je zámek známka důvěryhodnosti.

Související pojmy