Feb 21 2006
mod_rewrite plus zmienne z GET
Filed under Apache by Łukasz Dywicki
Dzisiaj miałem nietypowy problem – chciałem stworzyć sobie obsługę mod_rewrite ale nie babrać się z wyciąganiem zmiennych które był w żądanym adresie, dlatego też udałem się do google.pl w poszukiwaniu dodatkowych flag, które można ustawiać. Znalazłem bardzo fajną stronkę z kartą podręczną do mod_rewrite – http://www.ilovejackdaniels.com/cheat-sheets/mod_rewrite-cheat-sheet/ jest ich tam więcej – css, php, javascript, html, mysql. A moje rozwiązanie wygląda w następujący sposób:
RewriteEngine On
RewriteBase /z-tego-adresu/
RewriteCond %{REQUEST_URI} !^.*\.(css|png|gif|jpe?g|php|js)$
RewriteRule ^.*$ /z-tego-adresu/index.php?%{REQUEST_URI} [QSA,L]
Oczywiście wymaga dotarcia i obsługi w kodzie, ale GET jest bez zmian.. i to najważniejsze :)
Ja stosuje:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php
Ja swoją regółkę również zmieniłem – wywaliłem request uri – i tak je znam w PHP.