Jak přesměrovat web z HTTP na HTTPS?

Pro přesměrování všech požadavků z HTTP na HTTPS lze snadno provést pomocí .htaccess souboru (Apache) s následujícím obsahem:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]



One Response to “Jak přesměrovat web z HTTP na HTTPS?”

  • Jakub Bouček Says:

    Používáte-li LetsEncrypt jako autoritu pro vaše certifikáty ve spolupráci s metodou -webroot, doporučuju přidat před každé pravidlo:
    RewriteCond %{REQUEST_URI} !^/\.well-known/

    Toto pravidlo se pak velmi výhodně může uplatnit v situaci, kdy třeba web stěhujete a nebo renew omylem probíhá na neplatném (expirovaném či revokovaném) certifikátu. Pokud tuto podmínku ovedete i u přesměrování, které řeší canonikalizaci dotazu (např. odebítá/přidává http://www., bez_pomlčkovou variantu domény ap.), předejdete tím i chybám, při pokrývání certifikánu na nekanonické domény webu.

    Příklad: toto pravidlo se uplatní při renew certifikátu webu https://www.landsmanova.cz/, protože jako AlternativeName je tam i https://landsmanova.cz/ a https://veronika.landsmanova.cz/

Leave a Reply