Možností a variant, jak přesměrovat doménu je mnoho, ale máme pro vás několik tipů, díky kterým to zvládnete efektivně.
Pomocí Zákaznického Centra
Nejjednodušší možností je využít mikro-formuláře pro přesměrování domén v Zákaznickém Centru.
Jděte na Domény> Spravovat doménu>Vyberte konkrétní doménu>Detail>Přesměrovat doménu
Systém nastaví vše za Vás a během několika hodin se doména začne přesměrovávat.
Že má doména tuto funkci zapnutou, vidíte okamžitě v seznamu domén.
Pokud nevyužíváte naše DNS servery nebo pokud si chcete přesměrování nastavit ručně, můžete využít jednu z následujících možností:
.htaccess – i pro subdomény
Nedávno jsem řešil s jedním zákazníkem přesměrování subdomény. Zákazník má vlastní VPS a chtěl, aby se mu pustil Roundcube v případě, že zadá mail.domena.cz. Normálně je totiž roundcube přístupný z adresy mail.jméno serveru.vas-server.cz. Jak toho docílit?
Na FTP si vytvořte složku, která bude na stejné úrovni jako složka www. Složku pojmenujte mail. Vznikne tak subdoména.
Pak si otevřete Notepad a do prázdného dokumentu napište:
RedirectMatch permanent (.*) https://mail.jméno serveru.vas-server.cz$1
Tento soubor uložte tak, aby se jmenoval .htaccess Pokud budete pracovat s Notepadem ve Windows, je nutné si pohlídat při ukládání aby se neuložil do txt, což je pro notepad výchozí formát. (Když se otevře dialogové okno pro ukládání, tak zvolte Všechny soubory.)
Tak teď soubor pomocí FTP nahrajte do složky mail. Soubory .htaccess jsou často nastaveny jako skryté, takže pokud není vidět, neznamená, že tam není.
Přesměrování subdomény pomocí VPS centra
Nejjednodušší způsob pro přesměrování subdomén je pomocí našeho VPS centra.
Zvolte doménu, pak Nastavení a vyplňte formulář.
Princip je takový, že se v daném adresáři přejmenuje soubor .htaccess, aby nezasahoval do přesměrovávání, vytvoří se nový soubor index.php, který přesměruje návštěvníka jinam.
Z výše popsaného plyne, že změna se projeví okamžitě, protože se nejedná o zápis do DNS. Na druhou stranu je potřeba počítat s cache prohlížeče… 🙂
HTML meta tag v index.html
Druhým způsobem, který také patří k těm méně obtížným je přes index.html.
Do stránky rovnou vložte:
<meta http-equiv="refresh" content="2;url=http://adresa pro přesměrování/klidně i podstránka">
Úprava tohoto tagu je opravdu jednoduchá. Za url= je adresa na kterou chcete přesměrovávat a za content= je počet vteřin, než k přesměrování dojde.
index.html by ale kromě tohoto meta tagu neměl být prázdný. Jsou k tomu hned tři důvody.
- Tím prvním je, že návštěvník může mít tento typ přesměrování zakázaný. Ať už nastavením nějakého síťového prvku nebo nastavením prohlížeče. Tím by na index.html zůstal a viděl by jen prázdnou stránku. Proto je vhodné umístit na stránky tlačítko s odkazem.
- Druhým důvodem je, že pokud bude index.html obsahovat pouze meta tag pro přesměrování, nebude Vás mít rád vyhledávač.
- V neposlední řadě dojde z pohledu návštěvníka ke zpoždění při načítání a je dobré ho upozornit na to co se děje.
Přesměrování pomocí PHP skriptu
V PHP lze použít funkci Header(). Stačí napsat parametr Location s novou adresou. Pokud máte Header() povolený, dojde k přesměrování na novou stránku. Do staré stránky stačí vložit kód:
<?php
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.adresa_na_kterou_chcete_smerovat.cz');
header('Connection: close');
?>
Přesměrování pomocí Apache serveru
Přesměrování pomocí Apache serveru se hodí hlavně pokud chcete směrovat více stránek najednou.
Na Apache serveru se nejčastěji pro přesměrovávání používá .htaccess,.
(Soubor .htaccess je pro autora, který si chce sám upravit některé vlastnosti serveru. Server Apache se konfiguruje přes soubor httpd.conf. K tomuto souboru má ale přístup jen administrátor. Aby bylo pro autory snazší provádět změny, vznikl .htaccess. Ten umožňuje změnit chování adresáře ve kterém se sám nachází a to stejnými instrukcemi jako v httpd.conf. )
Když budete chtít, aby se web http://vas-server.cz/1.html přesměroval na http://vas-server.cz/2.html, do souboru .htaccess zadejte kód:
# presmerovani
RewriteEngine on
RewriteRule 1\.html /2.html [R]
Když pak čtenář požádá o soubor 1.html, místo něj dostane soubor 2.html.
Tuto novou adresu 2.html uvidí i v adrese prohlížeče. To [R] znamená redirect – tedy přesměrování. Čtenáři se zobrazí jiná adresa než chtěl.
Do souboru .htaccess nebo httpd.conf zadejte kód:
# podstrceni
RewriteEngine on
RewriteRule 3\.html 4.html
Místo stránky 3 se ukáže obsah souboru 4. Zadaná adresa v prohlížeči ale zůstává stejná, totiž 3.html. Proto se tomu říká podstrčení nebo přepisování.
Zápisy adres zde nemají lomítko na začátku, adresa 3.html se odvozuje od adresáře, ve kterém se vyskytuje .htaccess.
Mod_alias, jednoduchý redirect
Alias znamená, že když nastavíte www.2.cz jako alias pro www.1.cz, na obou doménách se bude zobrazovat stejný obsah. Ten který je nahraný na 1.cz.
Prostě obě domény směřují na stejnou adresu. To se hodí pokud máte například lokální obsah pro návštěvníka z jiné konkrétní domény. Pokud se ale zobrazuje obsah stejný, opět moc nepotěšíte vyhledávač.
Když se vrátíme k Apache serveru a přesměrování pomocí alias, do souboru .htaccess se napište:
Redirect /zdroj.html http://celaadresa.cz/cil.html
tím dojde k přesměrování a v řádku adresy už se mu objeví nová adresa. Přesměrovaný zdroj musí začínat lomítkem (odvozuje se od rootu webu), nová adresa ale musí být celá. Alternativou je:
Redirect 301 /zdroj.html http://celaadresa.cz/cíl2.html
Server tak bude posílat odpověď http „301 moved permanently“ s informací o nové URL.
Mod_alias umí i regulární výrazy. Symbolický zápis potom je
RedirectMatch regular-puvodniho-adresa nova-adresa