Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne]htaccess Rewrite
Forum PHP.pl > Forum > Przedszkole
smiady
Witam mam takie reguły w htaccess

  1. RewriteEngine On
  2.  
  3. RewriteRule ^([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1
  4. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1
  5. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2
  6. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2
  7. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2&param1=$3
  8. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2&param1=$3


Mam ścieżkę upload/license/dokument.jpg i chce aby ją odpaliło, ale bez nadpisywania jako index.php?page= jaką regułę należy dodać ?
trueblue
Dodaj przed regułami warunek na:
Kod
RewriteCond %{REQUEST_URI} !upload/license/dokument.jpg$

lub na wszystkie obrazki gdziekolwiek:
Kod
RewriteCond %{REQUEST_URI} !^/(.+)\.(jpg|jpeg|gif|png|bmp)$
smiady
Nistety zachowuje się danej tak samo przy obrazkach:

  1. RewriteEngine On
  2.  
  3. ErrorDocument 403 /error.php?code=403
  4. ErrorDocument 404 /error.php?code=404
  5. ErrorDocument 500 /error.php?code=500
  6.  
  7. RewriteCond %{REQUEST_URI} !^/(.+)\.(jpg|jpeg|gif|png|bmp)$
  8.  
  9. RewriteRule ^([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1
  10. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1
  11. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2
  12. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2
  13. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2&param1=$3
  14. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2&param1=$3
trueblue
Mój błąd. Przed każdą regułą taki warunek. Jeśli drugi warunek to wystarczy przed regułą, która dopasowuje się do podanej ścieżki.
smiady
Mam tak i nie działa

  1. RewriteEngine On
  2.  
  3. ErrorDocument 403 /error.php?code=403
  4. ErrorDocument 404 /error.php?code=404
  5. ErrorDocument 500 /error.php?code=500
  6.  
  7. RewriteRule ^([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1
  8. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1
  9. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2
  10. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2
  11. RewriteCond %{REQUEST_URI} !^/(.+)\.(jpg|jpeg|gif|png|bmp)$
  12. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)$ index.php?page=$1&subpage=$2&param1=$3
  13. RewriteRule ^([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/([a-zA-Z0-9-z\-\_]+)/$ index.php?page=$1&subpage=$2&param1=$3
Pyton_000
Tyle że z tego co widzę Twój htaccess nie powinien łapać obrazków, bo w żadnym regexp nie masz ujętej .
smiady
To co mam robić ? Bo nie łapie
Pyton_000
Jak wpiszesz adres:
upload/license/dokument.jpg
to na jaki adres przerzuca?
smiady
tworzy geta $page, $subpage $param co z tego idzie odlapa metode $page->$subpage($param) a jak to nie istnieje to idzie na strone error.php tak mam ustawione
trueblue
Pyton_000, oczywiście masz rację.

smiady, czy to Twój cały .htaccess? Czy pełny url wygląda mniej więcej tak http://domena.pl/upload/license/dokument.jpg ?
smiady
tak
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.