SSLmentor

Kvalitní TLS/SSL certifikáty pro webové stránky a internetové projekty.

.htaccess

.htaccess

Jak nastavit přesměrování na https v .htaccess

Po nasazení SSL certifikátu na webhosting musíme zajistit, aby veškerá komunikace probíhala po zabezpečeném protokolu HTTPS. Návštěvníci stránek zadávají do prohlížeče zkrácenou adresu stránek, někdy vloží s www, jindy pouze název domény bez www. Na internetu mohou být také starší odkazy na adresu http://. Tyto případy musíme ošetřit tak, aby vše směřovalo správně na adresu s HTTPS protokolem a také pouze jedna varianta s/bez www.

Přesměrování na HTTPS

Pomocí editace souboru .htaccess docílíme přesměrování a zobrazení adresy HTTPS:// na svém webu. Do souboru .htaccess přidejte následující řádky, tím se zajistí trvalé (301) přesměrování všech adres a současně bude přesměrování nastaveno i pro vyhledávače. Soubor .htaccess naleznete v domovské složce vašeho webu.

RewriteEngine On

# http na https
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R=301,L]

Přesměrování adres s www a bez www

V nastavení domény bychom si měli vždy určit, zda se bude doména zobrazovat s adresou www nebo bez www. Z hlediska uživatelského je adresa domény www.domenaxyz.cz upřednostňována a lidé chápou internetovou adresu s uváděním www. Tento zápis se hodí více iz hlediska marketingu. Naopak u technicky zaměřených webů se často používá adresa bezuvedení www. Rohodnutí je vždy na každém zvlášť.

Pro SEO si určete pouze jednu adresu. Důvodem je, že vyhledávače mohou indexovat obě adresy a snižovat tak hodnotu obsahu ve vyhledávání.

# přesměrování bez www na www.
#RewriteCond %{HTTP_HOST} !^www\. [NC]
#RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

# přesměrování z www. na bez http://
#RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
#RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

Výše uvedený kód vložte do souboru .htaccess a vyberte si druh přesměrování a odstraňte znak '#' před RewriteCond a RewriteRule. Přesměrování, které nebudete využívat můžete smazat.

Vzor .htaccess přesměrování https:// + doména s www

Kompletní kód, který můžete vložit do souboru .htaccess na svém webhostingu.

RewriteEngine On

# bez www na www
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

# http na https
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R=301,L]

Doporučení - doplnění bezpečnostní hlavičky

Do souboru .htaccess doporučujeme také vložit nastavení bezpečnostní hlavičky Upgrade Insecure Requests, která prohlížeči "říká", aby vše co se načítá, načítal přes zabezpečený protokol HTTPS. Nastavení hlavičky pomůže (vy)řešit i tzv. Mixed Content obsah. Řádek s nastavením vložte na závěr souboru .htaccess.

# CSP settings
Header set Content-Security-Policy: "upgrade-insecure-requests;"

Zpět na Nápovědu
Našli jste chybu nebo něčemu nerozumíte? Napište nám!

CA Sectigo
CA RapidSSL
CA Thawte
CA GeoTrust
CA DigiCert
CA Certum