Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][.htaccess] jeżeli nie rewriterule to przekieruj
Forum PHP.pl > Forum > Przedszkole
-Jasiek-
Witam,
zastanawiam się czy da się w pliku .httaccess tak ustawić przekierowanie na blad.php jeżeli zapytanie użytkownika nie pasuje do reguł. Np. mam taki plik:
  1. RewriteEngine on
  2. RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?controller=$1
  3. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2
  4. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2&parms=$3


I teraz użytkownik wpisuje /asd/qwr/aff/asd /. Adres nie pasuje do żadnej z reguł dlatego przenoszę użytkownika do blad.html.

Pozdrawiam Jasiek.
Pawel_W
wystarczy dodać kolejną regułę ze wzorcem .*
-Jasiek-
Właśnie w tym problem, że nie działa :/ Na początku też pomyślałem, że to jest rozwiązanie ale wtedy nawet jak pasuje do reguły to przekierowuje na tą ostatnią.

  1. RewriteEngine on
  2. RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?controller=$1
  3. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2
  4. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2&parms=$3
  5. RewriteRule ^.*$ 404.html
erix
A gdzie Ty masz tu flagę [L]?
-Jasiek-
Dokształciłem się i już wiem do czego są flagi, jednak dalej ten sam efekt.

  1. RewriteEngine on
  2. RewriteRule ^([a-zA-Z0-9]+)/?$ index.php?controller=$1 [L]
  3. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2 [L]
  4. RewriteRule ^([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/([a-zA-Z0-9]+)/?$ index.php?controller=$1&method=$2&parms=$3 [L]
  5. RewriteRule ^.*$ 404.html
-Jasiek-
Coś robię źle czy po prostu tak się nie da ?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.