Jak na „pěkné“ URL?
Nelíbí se Vám dynamické URL?
Pokud máte webové stránky, kde používáte dynamické adresy (s otazníkem) a
chcete to změnit, mod_rewrite Vám to umožní (za pomocí
patřičných vědomostí). Pomocí mod_rewrite budou mít Vše
stránky URL naoko stejnou, jako statické (např.html). Je to
lepší pro zapamatování a i pro vyhledávací roboty, kteří ji bez problémů
zaindexují. Vhodnému tvaru adresy se říká Cool URI (Uniform
Resource Identifier, jednotný identifikátor zdroje – Jedná se o standard pro
určení (identifikaci) objektu či typicky na internetu). URI
je velice podobná URL (URL je "podmnožinou" URI). V "normální řeči" se
setkáte s výrazy jako pěkné URL, nice URL…
Kód v souboru (typicky v htaccess) pro pěkné URL bude vypadat
následovně:
RewriteCond %{HTTP_HOST} ^muj\.blog\.cz
RewriteRule ^ivt(.*)\.html$
http://muj.blog.cz/index.php?p=$1 [L,QSA]
První řádek, tedy RewriteCond, určuje, za jakých podmínek se bude
pravidlo provádět. Přejdeme ke druhému řádku, a trošku si ho rozebereme.
Pokud uživatel požaduje stránku, která začíná řetězcem ivt
s příponou html, tak se mu podstrčí URL, která vede na
skutečné umístění článku. Díky tomuto kódu stránka s příponou .html nemusí
existovat. Pokud do příznaků v hranatých závorkách přidáme R, bude se jednat
o přesměrování, ne o podstrčení.
Nefunguje to?
Úpravy z dynamických adres (to jsou ty, které obsahují proměnné) na
statické adresy (neco.html) jsou super v případě, že máte aplikaci, která už
tyto statické adresy využívá v odkazech. Pokud máte web, který všude využívá
dynamických adres s proměnnými, tak se to řeší trošku jiným způsobem
(složitěji). Takto lze pěkné URL vytvořil, je to však jen
pro jednoduché dynamické stránky.