Presmerovanie na WWW alebo ne-WWW verziu stránky
Nech už si vyberiete akúkoľvek verziu s WWW alebo bez, z hľadiska SEO na čom nezáleží, mali by ste vyriešiť presmerovanie jednej verzie na druhú. Ak by ste napríklad mali verziu s www a niekto by chcel navštíviť verziu bez www, mal by byť automaticky presmerovaný tak, aby bola vždy k dispozícii len jedna verzia.
Tým sa vyrieši veľa problémov s duplicitným obsahom, oslabeným linkbuildingom a je to jednoducho lepšie. Tu je návod, ako to urobiť.
📝Obsah
Presmerovanie cez .htaccess
Súbor .htaccess je súbor, ktorý je pomenovaný presne takto: „.htaccess“ bez úvodzoviek a s bodkou na začiatku. Je to súbor, pomocou ktorého môžeme sami zmeniť nastavenia servera Apache bez toho, aby sme museli kontaktovať webového hostiteľa. Ak máte niekde webovú stránku, je pravdepodobne poháňaná Apache, takže môžete použiť aj .htaccess. Takto si môžeme mnohé veci nastaviť sami.
Tento súbor sa nachádza priamo v koreňovom priečinku vašej webovej lokality. Môže sa nachádzať aj v podpriečinkoch, kde vždy ovplyvňuje daný podpriečinok alebo aj iné adresáre, ktoré sú súčasťou tohto podpriečinka. Zvyčajne však upravujeme súbor .htaccess v koreňovom priečinku, kde je platný pre celý web vrátane všetkých priečinkov.
V súbore .htaccess zapisujeme príkazy, ktoré vykonáva priamo server. Môžeme ho použiť na odopretie prístupu k IP adresám, nastavenie času vypršania platnosti súborov v medzipamäti, ale predovšetkým na presmerovanie.
Na čo si dať pozor
- Súbor .htaccess mení nastavenia servera. Nesprávne nastavenie môže ľahko spôsobiť pád celého webu
- Vždy majte prístup k súboru .htaccess inak ako prostredníctvom zásuvných modulov. Zvyčajne sa súbor mení prostredníctvom FTP. Ak používate WordPress, môžete tento súbor zmeniť priamo v administrácii prostredníctvom pluginov. V prípade iných systémov správy obsahu to bude podobné. Ak však súbor zle nakonfigurujete a zrútite svoju stránku, nebudete sa môcť dostať do administrátora. Takže určite potrebujete prístup k FTP!
- Pred zásahom do súboru .htaccess nie je zlé vytvoriť zálohu tohto súboru
- Presmerovania sa môžu ukladať do vyrovnávacej pamäte prehliadača. Ak testujete, či presmerovanie funguje správne, použite anonymné okno
Presmerovanie z ne-WWW na WWW verziu (+ z http na https)
V tejto verzii automaticky presmerovávame z verzie, ktorá nie je WWW, na verziu WWW a tiež zvládame presmerovanie z http na zabezpečené https.
V súčasnosti je https štandardom, vybavenie certifikátu je úplne zadarmo na každom trochu solídnejšom webhostingu a z hľadiska SEO je to faktor hodnotenia. Udržujte preto svoje stránky na protokole https. Aj v tomto prípade je potrebné riešiť presmerovanie, ktoré je riešené nižšie uvedeným kódom, a to v rámci jedného presmerovania, ktoré je rýchlejšie a zároveň odľahčí váš server/webhosting.
Ak by sa niekto chcel dostať na stránku http://example.com, v praxi by sa dostal na stránku https://www.example.com jediným presmerovaním. Všetky parametre v adrese URL sú tiež ošetrené, takže http://example.com/abc/ bude presmerovaný na https://www.example.com/abc/
Pridajte tento kód do súboru .htaccess
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule (.*) https://www.vasedomena.sk%{REQUEST_URI} [R=301,L]
Čo tento kód robí:
- V prvom riadku povolíme mod_rewrite, čo je modul servera Apache pre presmerovanie URL. To je to, čo chceme v tomto prípade.
- Druhý a tretí riadok sú podmienky presmerovania, ktoré kontrolujú, či sa nachádzame na zabezpečenom https (ak nie, dôjde k presmerovaniu) alebo na inej ako WWW verzii stránky (ak nie, dôjde k presmerovaniu).
- Posledný riadok je potom adresa samotného presmerovania. Nezabudnite zmeniť „vasedomain“ v tomto riadku na vašu skutočnú doménu. Zátvorky na samom konci potom informujú, že ide o presmerovanie 301, t. j. trvalé presunutie stránky, a L znamená Last, t. j. ak dôjde k presmerovaniu, server už nespracúva ďalšie riadky v .htaccess, ale jednoducho presmeruje.
Presmerovanie z verzie WWW na verziu bez WWW (+ z http na https)
Tu nájdete presmerovanie z verzie WWW na verziu bez WWW. Informácie o tom, čo tento kód znamená, sú totožné s presmerovaním na WWW, takže stačí preskočiť odsek vyššie. Presmerovanie z http na https sa tiež vykonáva v jednom kroku.
Do súboru .htaccess pridajte nasledujúci kód, ktorý funguje v podstate rovnako ako kód vyššie, len sú nastavené iné podmienky a samotná výsledná adresa URL. V poslednom riadku zmeňte „vasedomain“ na vašu skutočnú doménu.
Pridajte tento kód do súboru .htaccess
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteRule (.*) https://vasedomena.sk%{REQUEST_URI} [R=301,L]
Presmerovanie na WWW verziu (bez rozlíšenia https)
Ak naozaj, ale naozaj nemôžete previesť stránku na https (aj keď by ste naozaj, ale naozaj mali byť schopní), pridávam aj kód, ktorý nerieši presmerovanie z http na https, ale len z non-www na www verziu stránky. Môžete ich použiť najmä vtedy, keď ste už vyriešili presmerovanie https. Je lepšie mať všetko v jednom kroku, ale pre úplnosť to môže byť užitočné.
Presmerovanie z https na http neuvádzam, pretože ak nemáte vydaný certifikát SSL, aj tak by to nefungovalo. A ak máte certifikát, nemá zmysel nepoužívať zabezpečený protokol a presmerovať na nezabezpečený protokol.
Ak chcete presmerovať na WWW verziu stránky, pridajte tento kód do súboru .htaccess. Do posledného riadku nezabudnite uviesť svoju skutočnú doménu:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www. [NC]
RewriteRule (.*) http://www.vasedomena.sk%{REQUEST_URI} [R=301,L]
Presmerovanie na verziu, ktorá nie je WWW (bez rozlíšenia https)
Ak chcete presmerovať z www na newww verziu, pridajte do .htaccess nasledujúci kód. Do posledného riadku nezabudnite uviesť svoju skutočnú doménu:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www. [NC]
RewriteRule (.*) http://vasedomena.cz%{REQUEST_URI} [R=301,L]