Přesměrování Drupalu na www a https konečně jednoduše a modulem

Web by měl běhat na jediné adrese. Vyberete si variantu s www nebo bez ní a tu opačnou na ni přesměrujete. Podobně by dnes všechny weby měly být přesměrované na zabezpečenou https variantu. Stále to řešíte editací .htaccessu? Nemusíte.
reklama

Co si budeme říkat, každý web má vlastně čtyři různé adresy, na kterých se teoreticky otevře, aniž byste se o to nějak snažili. Dvě varianty nám dá přítomnost nebo absence www v url. Další dvě potom kombinace s klasickým http nebo zabezpečeným https protokolem.

Pokud váš hosting umožňuje i dočasnou adresu, ujistěte se, že máte nastaven v Drupalu Trusted Host Pattern a povolenou jen hlavní doménu. Dříve, než vyhledávač začne indexovat web na té dočasné adrese. Viz info v knize 333 tipů a triků pro Drupal 9

Abyste zabránili tomu, že se web otevře na různých kombinacích URL adresy, už třeba kvůli vyhledávačům a jejich posuzování duplicitního obsahu na více URL, tak pravděpodobně v Drupalu měníte soubor .htaccess. 

Dělá se to tak od doby, co je Drupal Drupalem. Ve spoustě komentářů na začátku souboru najdete i vzor, jak přesměrovat www variantu na non-www variantu, případně obráceně. 

Co se týče přesměrování na zabezpečený protokol https, k tomu nápovědu ve výchozí podobě souboru nenajdete. Já používám následující řádky, které mi kdysi dávno poradili na Active24. Zpětně díky. Stačí je dát na začátek souboru .htaccess: 

RewriteEngine On 
RewriteCond %{HTTPS} !on 
RewriteCond %{HTTP:X-Forwarded-Proto} !=https 
RewriteRule ^.*$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L,QSA,NE] 

Řešení je perfektní, http adresy přesměruje 301 redirektem na jejich podobu s https. 

Ideální je, když se o toto stará hosting nebo server a nemusíte se tím v Drupalu už vůbec zabývat. Například Virtualmin, který používám pro správu webů, toto umí jedním zatrhovátkem. 

.htaccess se vám v Drupalu často přepíše

Problém je, když si soubor .htaccess upravíte vlastním nastavením a nastane čas Drupal aktualizovat. 

  • Na klasickém hostingu byste měli sledovat, jestli aktualizace mění .htaccess. Pokud ano, své změny zpětně zaneste do nového. Jinak jej stačí prostě nepřepisovat. 
  • U webu rozjetého přes Composer vám bohužel scaffolding .htaccess vždy přepíše aktuální výchozí verzí. 

Většinu webů s Drupalem už mám rozběhnutou pomocí Composeru a protože změny do .htaccessu dělám dost často i větší než jenom doplnění redirektů, používám patch, který se po aktualizacích v Composeru spustí a provede potřebné úpravy do čerstvého souboru. Viz článek Jak zabránit přepisování robots.txt a .htaccess při aktualizaci Drupalu přes Composer

Přesměrování v Drupalu i bez úprav .htaccessu

Loni na podzim se objevil možná zbytečně přehlížený modul HTTPS and WWW Redirect. Ten totiž zajistí přesměrování na požadovanou verzi webu bez nutnosti editace jakéhokoli konfiguračního souboru. 

Jasně, můžeme teoreticky řešit, jestli je rychlejší redirekt instrukcí pro webserver předtím, než se spustí Drupal (což tedy je) nebo řešení, kdy si přesměrování dělá až spuštěný Drupal. Ale tam, kde web běží z klasické instalace a bez Composeru je to prostě skvělá vychytávka. 

HTTPS and WWW Redirect

Při dalších aktualizacích už nebude třeba řešit, zda se vám .htaccess přepsal nebo ne. Tedy minimálně kvůli přesměrování.

Tip: Potřebujete-li poslat návštěvníky z jedné domény na druhou, mrkněte se na návod, jak přesměrovat doménu s využitím služby Redirect.Host.

Tagy
Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal a Symfony. Obojí také školím spolu se základy SEO. Jsem Acquia Certified Developer (Drupal 7) a Site Builder (Drupal 8 & 9) a napsal jsem několik knih o Drupalu. Ve volných chvílích cestuji a podnikám výlety. Více se dozvíte na mém firemním webu.

reklama

Komentáře k článku

Přidat komentář

Filtered HTML

  • Povolené HTML značky: <a href hreflang> <em> <strong> <cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <p> <br>
  • Řádky a odstavce se zalomí automaticky.
  • Web page addresses and email addresses turn into links automatically.

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Novinka listopad 2020

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
reklama
Nové diskuze
reklama
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

Co píší na Interval.cz
@maxiorel na Twitteru

Maxiorel na Twitteru