Přesměrování na https

Pokud již máte aktivovanou DV SSL službu nebo zřízenou SSL službu a vaše webové stránky jsou v prohlížeči přístupné přes zabezpečený protokol HTTPS na adrese https://www.nazev-domeny.cz, můžete si nastavit automatické přesměrování.
Web poté bude přístupný pouze přes protokol HTTPS a veškerá komunikace bude šifrovaná. U aliasových domén není možné v rámci služby DV SSL vystavit SSL certifikát. Možnost aktivace SSL pro aliasové domény je v případě doplňkové služby SSL.

V případě, že na webu využíváte redakční systém (Wordpress, Joomla, Prestashop a podobné), lze obvykle toto přesměrování nastavit přímo z jejich administračního rozhraní.
Toto nastavení pro redakční systém Wordpress popisujeme v článku Nastavení přesměrování Wordpress na protokol HTTPS se službou DV SSL.

Pro zrychlení přesměrování na novém hostingu Linux můžete na proxy serverech zapnout "SSL redirect" v nastavení webu po přihlášení do administrace https://admin.forpsi.com:
 
Pro zrychlení přesměrování na serverech s operačním systémem Linux či Windows můžete využít soubor s názvem ".htaccess" . Soubor "web.config" funguje pouze u serveru s operačním systémem Windows.
 
Tyto soubory naleznete na FTP účtu vašeho webhostingu ve složce "/www/" v případě, že je již váš web využívá. Pokud ne, je zapotřebí soubor vytvořit. Tento postup popisujeme níže v tomto článku: Jak nastavit přesměrování na HTTPS pomocí souboru .htaccess.
 
Do souborů přidejte následující řádky podle konkrétních požadavků na přesměrování aliasů. V kódu z příkladů je zapotřebí jen upravit název "www.nazev-domeny.cz" na vaši doménu.
 
Příklad souboru .htaccess - přesměrování na určitou doménu a doplnění www:
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off [NC,OR]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule (.*) https://www.nazev-domeny.cz%{REQUEST_URI} [L,R=301,QSA]
 
Příklad souboru .htaccess - přesměrování se zachováním domény/aliasu v adrese:
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off [NC]
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301,QSA]


Příklad souboru web.config na přesměrování pouze hlavní domény:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
  <rewrite>
    <rules>
      <rule name="Redirect to HTTPS" stopProcessing="true">
        <match url="(.*)" />
        <conditions>
          <add input="{HTTPS}" pattern="off" ignoreCase="true" />
        </conditions>
        <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
      </rule>
    </rules>
  </rewrite>
</system.webServer>   
</configuration>
 
Příklad souboru web.config na přesměrování hlavní domény včetně aliasů:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
  <rewrite>
    <rules>
      <rule name="Redirect to HTTPS" stopProcessing="true">
        <match url="(.*)" />
        <conditions logicalGrouping="MatchAny">
          <add input="{HTTPS}" pattern="off" ignoreCase="true" />
          <add input="{HTTP_HOST}" pattern="^www.nazev-domeny.cz$" negate="true" />
        </conditions>
        <action type="Redirect" redirectType="Permanent" url="https://www.nazev-domeny.cz/{R:1}" />
      </rule>
    </rules>
  </rewrite>
</system.webServer>   
</configuration>
 

Jak nastavit přesměrování na HTTPS pomocí souboru .htaccess

V příkladu nastavíme pomocí ".htaccess" souboru automatické přesměrování http://www.forpsi-test.com/ na adresu https://www.forpsi-test.com/ dle prvního příkladu Příklad souboru .htaccess - přesměrování na určitou doménu.

K nastavení budeme potřebovat FTP klienta, doporučujeme klienta Filezilla a textový editor - můžete využít například Notepad++, který je poskytován bezplatně a v českém jazyce.
 
Nedoporučujeme provádět úpravu ".htaccess" souboru v dostupném "Poznámkovém bloku", mohlo by dojít při uložení k úpravě jeho formátu a kódování.
 
Po nastavení FTP spojení ověříme, zda se ve složce /www/ nachází ".htaccess" soubor. Pokud ano, stáhneme soubor na lokální disk a provedeme v Notepad++ jeho editaci. Pravidla nejlépe vložte hned na začátek souboru před ostatní obsah, který ponechte.
 
Jestliže soubor neexistuje, v Notepad++ provedeme přes nabídku "Soubor -> Nový" vytvoření nového souboru.
 
Zkopírujeme z prvního příkladu všechny řádky a vložíme je do Notepad++:
 
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off [NC]
RewriteRule (.*) https://www.nazev-domeny.cz%{REQUEST_URI} [L,R=301,QSA]
 
 

Notepad++ a vzorový .htaccess z příkladu

 
 
Nyní upravíme v Notepad++ na 3. řádku příkladový název "nazev-domeny.cz" na "forpsi-test.com":
 

Notepad++ a upravený obsah v .htaccess

 
 
Soubor máme upravený a provedeme jeho uložení pomocí nabídky "Soubor -> Uložit jako".
 
  • v nabídce "Název souboru"napíšeme:
    • .htaccess
  • v nabídce "Uložit jako typ"vybereme:
    • All types(*.*)
 
Soubor poté uložíme do složky na lokálním počítači:
 

Uložení souboru .htaccess v Notepad++

 
 
Soubor máme připravený a můžeme ho nahrát na FTP účet do složky "/www/", případně jím přepsat původní, pokud jsme editovali již existující:
 

Nahrání .htaccess na FTP účet pomocí FileZilla

 
 
Vše by mělo být připraveno a v prohlížeči můžeme otestovat po zadání domény bez HTTPS protokolu, tedy http://vase-domena.cz, zda dojde k přesměrování na zabezpečený protokol HTTPS - URL nastavenou v ".htaccess" souboru.
 
Pro tento test doporučujeme využít "anonymní režim" prohlížeče, aby nedocházelo k načítání obsahu z paměti prohlížeče.
 
Jestliže máte nastavenou SSL službu i pro subdomény, je potřeba provést stejné nastavení s odpovídající adresou i pro ně a nahrát soubor ".htaccess" do jejich root adresářů "/subdoms/název_subdomény/" na FTP účtu.
 
Na vašich webových stránkách může nastat problém, kdy se nějaký obsah (například obrázky, javascript, kaskádové styly) bude načítat přes protokol HTTP a prohlížeč vám bude zobrazovat varování, že web není kompletně zabezpečen.
Tento problém a řešení je popsaný v článku Proč není má stránka zabezpečena?