Přesměrování na www doménu
Přesměrování na www doménu
Tohle je taková "vychytávka" modlulu mod_rewrite, která je
dle mého mínění užitečná pro každý web. Požadavek na přístup na Vaše stránky
může přicházet ve tvaru mujweb.cz. Pokud však preferujete, aby uživatelé chodili
na Vaše stránky přes tvar www.mujweb.cz můžete zajistit přesměrování
prvního případu.
Tvorba vlastního obsahu
RewriteEngine On
RewriteCond %{HTTP_HOST} ^iceboy.cz
RewriteRule (.*) http://www.iceboy.cz/$1 [R=301,QSA,L]
Podmínka RewriteCond je vlastně jednoduchá podmínka (např.
jako IF v Javě, Pascalu či jiném programovacím jazyce). Pokud je splněna,
pracuje se s pravidlem RewriteRule. V tomto případě je testována proměnná
%{HTTP_HOST}, ve které je uložena doménová část žádaného URL. Pokud název domény
začíná nějakým řetězcem (ten zastupuje ta stříška), příkaz se provede. Pokud
tedy někdo přistupuje na iceboy.cz/cokoliv bude přesměrován na www.iceboy.cz/cokoliv.
Uvedený zápis musí být umístěn v rootu domény.
- QSA – query string append – do substituce se přidají GET parametry ze
schématu, místo toho, aby se nahradily (jednoduše řečeno, přenese se i ta
část adresy, která leží za otazníkem)
RewriteCond blíže
Symbolický zápis RewriteCond:
RewriteCond testovaný-řetězec regulár # následují pravidla RewriteRule
V části testovaný-řetězec se dají použít proměnné, v části regulár zase
zvláštní znaky. %{HTTP_HOST} je hostname, tedy celé doménové jméno. Stříška v
příkladu (^iceboy.cz)znamená začátek řetězce.
Více podmínek se může řetězit operátory [OR] a píšou se na více řádků. Uvedu
příklad:
RewriteCond %{REMOTE_HOST} ^hostname1.* [OR]
RewriteCond %{REMOTE_HOST} ^hostname2.*