Jak zavést HTTPS krok za krokem

K čemu je vlastně HTTPS a SSL certifikát?

Lidsky řečeno SSL certifikát, jeho klíč a certifikační autorita, jsou prostředky, které jednak zamezí napadení stránky, a navíc aktivita mezi vaším zařízením a serverem zůstane jen mezi vámi (komunikace je šifrovaná).  Je jasné, že takové nastavení mají rádi i vyhledávače.

  • Zaujalo vás to? Mrkněte na více článků na téma SSL

Známý a velmi populární certifikát „Let’s Encrypt“ je zdarma. Váš Hosting ale podporuje i klasické certifikáty.

Než se ale pustíme do práce, je třeba nejprve certifikát aktivovat.

Jak aktivovat certifikát pro hosting?

V Zákaznickém Centru klikněte na Domény>Detail domény>Https certifikáty

https certifikát

O jeho prodloužení se stará náš systém sám.

Jak aktivovat certifikát ve VPS centru?

Pokud máte VPS, tak ve VPS centru vyberte v levém boxu doménu, které se bude certifikát týkat, klikněte na nastavení a tam už máte možnost certifikát zapnout.

Podpora Let’s Encrypt wildcard certifikátů

S červencovým releasem VPS Centra (2.56) jde aktivovat i Wildcard certifikát. Wildcard je další z druhů SSL Let’s Encrypt certifikátů. Obvykle bývá placený a oproti klasickému Let’s Encrypt umí o trochu víc: 

  • Například zvládá automatickou aktivaci SSL u všech vašich subdomén naráz
  • Není zapotřebí aktivovat SSL až po změně v DNS.
  • Nemusíte ho znovu vystavovat nebo měnit, když přidáte další subdoménu.
  • Lze si jej na server připravit dopředu.

V nové aktualizaci máte tři možnosti:

  1. Buď si necháte klasický LE certifikát vystavit pro každou doménu zvlášť.
  2. Nebo Wildcard certifikát pro celou doménu či seznam všech subdomén.
  3. Nebo půjdete cestou vlastního řešení, ale s tím, že takový certifikát projde nejprve naší kontrolou, abychom se vyhnuli komplikacím během aktivace.

Kámen úrazu

V tuto chvíli SSL funguje. Pokud dáte https://www.domena.cz tak se nahoře objeví vytoužený zámeček indikující, že se jedná o šifrovanou komunikaci čili je SSL certifikát aktivní. Zámeček v prohlížeči lze rozkliknout a podívat se na podrobnosti.

Jde ale o to, že návštěvníci nezadávají adresu v tomto tvaru. Vkládají adresy včetně www či bez nebo přichází z nějakého vyhledávače, kde je uvedeno http://www.domena.cz. Je tedy nutné zajistit, aby veškerá komunikace probíhala přes HTTPS a jedním ze spolehlivých způsobů je právě přesměrování pomocí .htaccess.

Další věcí, na kterou je třeba dávat pozor je tzv. Mixed content. Jan název napovídá, bude se jednat o obsah na který se ze stránek odkazujete a zdroj obsahu není na https. Pak je nutné projít znovu celý web a zkontrolovat to. Prostě žádný obrázek či video nesmí být zobrazováno z webu, který nejede na https. Pokud v kódu nějaký takový obsah máte, certifikát nebude fungovat ani zde.

Souhrn informací o .htaccess naleznete zde

Přesměrování HTTP na HTTPS

Soubor .htaccess naleznete v domovské složce vašeho webu. Připojte se tam pomocí FTP. Můžete využít našeho webového rozhraní. Pokud preferujete aplikaci, doporučujeme WinSCP.

V souboru .htaccess pod RewriteEngine On napište:

RewriteEngine On
# all redirection HTTP -> HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

 S www nebo bez

Rozhodnutí, zda chcete, aby se v prohlížeči zobrazovalo www nebo ne je na vás. Osobně preferuji bez. Google totiž ve svém prohlížeči bude brzy www schovávat stejně jako dnes schovává HTTP(S).

Doména s adresou začínající www

RewriteEngine On
# all redirection HTTP -> HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]# redirection no www -> https://www.
RewriteCond %{HTTP_HOST} !^www\. [NC]RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

Doména bez www

RewriteEngine On
# all redirection HTTP -> HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]# redirection www. -> https://
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]RewriteRule ^(.*)$ https://%1/$1 [R=301,L]

Přesměrování pomocí Apache

Stejných výsledků lze docílit i konfigurací Apache nebo NGINX. Pokud používáte Apache, stačí vám upravit a spustit následující konfiguraci. Za ManagedDomain stačí napsat všechny tvary domén a server se už o vše postará sám.

ManagedDomain domena.cz www.domena.cz 

<VirtualHost *:443>
ServerName www.domena.cz
ServerAlias domena.cz
Protocols h2 http/1.1
SSLEngine on
...
</VirtualHost>

MDCertificateAgreement https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf
ServerAdmin admin@domena.cz

Přesměrování pomocí NGINX

Na NGINX máme připravené přesměrování v konfiguračním souboru v našem VPS centru. Stačí vymazat křížek v tomto řádku.

Kontrola

Zkontrolovat, jestli se stránky přesměrují můžete pomocí nástroje na stránkách httpstatus.io.

Did this article help you?

Similar articles

Podpora Váš Hosting
Offline

Dobrý den! Zkusím Vám odpovědět ihned. Na co se ptáte?