Webhosting – samostatné weby pro aliasy

  htaccess, Nastavení, Webhosting

Abyste pro nějakou doménu, která je u webhostingu nastavena jako alias, vytvořili samostatný web, stačí přes FTP vytvořit podadresář v adresáři www/domains.

Příklad: Máme webhosting a u něj je jako alias nastavena doména example.com a my pro ni potřebujeme jiný obsah. V takovém případě vytvořte adresář www/domains/example.com a do takto vzniklého adresáře nahrajte soubory, které se mají zobrazovat na adrese http://www.example.com/ (bude to fungovat též pro http://example.com/).

Pokud používáte aliasy s různým obsahem, důrazně doporučujeme také obsah hlavní domény přesunout do adresáře domains. Například máme webhosting doména1.cz a přidali jsme k němu druhou doménu doména2.com. Doporučené umístění stránek je následující:

  • www – zde ponechte pouze náš .htaccess soubor
  • www/domains/doména1.cz – zde nahrajte obsah hlavní domény
  • www/domains/doména2.com – zde nahrajte obsah druhé domény

Taktéž se ujistěte, že u domény v DNS máte odpovídající A záznam směřující na příslušný webhostingový server (to by se mělo samo správně nastavit při nastavování aliasu).

Dále si přečtěte:

Různé subdomény pro různé aliasy

V adresáři domains můžeme vytvářet i adresáře s názvem subdomén aliasů. Např. vytvoříme-li adresář www/domains/jirka.example.com, bude do něj nasměrována URL http://jirka.example.com/

Čím se to liší od vytvoření adresáře www/subdom/jirka? Řešení se subdom se aplikuje na všechny aliasy (všechny domény, které jsou aliasem, budou mít společnou subdoménu jirka se stejným obsahem). Ale řešením s adresářem domains tuto subdoménu vytvoříme jen pro example.com.

  • subdomény pomocí subdom – jednodušší řešení pro webhostingy, které nepoužívají aliasy
  • subdomény pomocí domains – lepší řešení při používání aliasů

Soubor htaccess

Samostatné weby pro aliasy jsou dělány pomocí pravidel, která jsou v souboru .htaccess ve vašem webu.

Následující soubor .htaccess vytvářet ani řešit nemusíte, ten je již ve vašem webhostingu připraven. Pro jeho použití stačí jen vytvořit potřebný adresář dle návodu výše.

Pravidla pro samostatné weby aliasů v souboru .htaccess jsou následující:

RewriteEngine On

# cele domeny (aliasy)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

# subdomeny (s nebo bez www na zacatku)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]

# aliasy - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

# subdomeny - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]

Tento kód řeší současně i vytvoření subdomén.

Byl pro Vás tento návod užitečný?