Knihovna mod_rewrite umožňuje v htaccess souboru definovat přesměrování jednotlivých stránek i celého webu a to za použití regulárních výrazů. Tento článek je určen těm, co už alespoň zaslechli pojem htaccess, nebo si přečetli předchozí článek.
Pokud již máte rozchozený nějaký php server na svém pc, ale ještě jste mod_rewrite nepoužívali, pravděpodobně jej budete muset povolit. Knihovna mod_rewrite se povoluje v konfiguračním souboru httpd.conf. Tento soubor hledejte někde v instalačním adresáři Apache.
Soubor httpd.conf je třeba otevřít (doporučuji pozn. blok) a najít v něm:
LoadModule rewrite_module modules/mod_rewrite.so
Pokud je na začátku tohoto řádku mřížka (#), znamená to, že je řádek zakomentářovaný = ignoruje se => mod_rewrite je zakázaný.
Mod_rewrite povolíte právě odkomentováním - smazáním mřížky na začátku řádku.
Poté je ještě třeba stejné odkomentování na řádku obsahujícím:
AddModule mod_rewrite.c
Pokud máte nějaký webhosting, pravděpodobně nemůžete ovlivňovat přímo nastavení serveru. Je možné, že již máte vše povolené. Je také možné, že si to musíte aktivovat/povolit v administraci webhostingu, popřípadě provést jiné kroky. Pro případné dotazy kontaktujte podporu Vašeho webhostingu.
Pro povolení používání mod_rewrite musíte přímo v souboru .htaccess vložit direktivu:
RewriteEngine on
Zapnutí ověříte vyzkoušením některého z příkladu z následujícího dílu o htaccess -
Přesměrování a podstrkávání.
Další příklady přesměrování stránek pomocí htaccess.
<Directory />
Options All
AllowOverride None
</Directory>
<Directory "${path}/www">
AllowOverride None
</Directory>
RewriteEngine On
RewriteCond %{http_host} !^(www/.)?dd-vip/.eu [NC] # vse krome
RewriteRule (.*) http://www.dd-vip.eu/index.php?id=%2&cesta=$1 [L]
[1] Free dne 13.08.2007:
dobry web, dobre navody :)