Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wiele reguł RewriteCond
Forum PHP.pl > Forum > Serwery WWW > Apache
sazian
Witam,

chcę przy pomocy htaccesa sprawdzić czy plik ma rozszerzenie jpg, czy ma parametr "mini" oraz czy istnieje, jeśli mam 3xtak to ma uruchomić plik php.
Czyli przykładowy plik spełniający warunek powinien wyglądać tak
http://domena.aaa/plik.jpg?mini

napisałem taką regułę 
Kod
RewriteCond %{REQUEST_URI} (.*)\.jpg [NC]
RewriteCond %{QUERY_STRING} mini [NC]
RewriteCond %{DOCUMENT_ROOT}/%1.jpg -f
RewriteRule (.*) plik.php [L]

która oczywiście nie działa sad.gif
Ale jak usunę RewriteCond %{QUERY_STRING} mini [NC] lub RewriteCond %{DOCUMENT_ROOT}/%1.jpg -f to działa, ale jeśli są oba to już nie sad.gif

Macie jakiś pomysł dlaczego tak się dzieje ?

trueblue
A może tak?

Kod
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} (.*)\.jpg [NC]
RewriteCond %{QUERY_STRING} mini [NC]
RewriteRule (.*) plik.php [L]
sazian
Ok fakt działa ale trochę za bardzo uprościłem przykład wink.gif

Dla ułatwienia można przyjąć że ma to taki program do generowania miniaturek.
Jeśli ktoś chce wczytać plik.jpg?mini to na serwerze trzeba sprawdzić czy istnieje plik-mini.jpg, jeśli nie tu musi zostać uruchomiony generator miniaturek.

Czyli tak naprawdę powinno być !-f ale dla testów najpierw chciałem sprawdzę odwrotnie "bo tak będzie łatwiej".
Dlatego też dałem to %{DOCUMENT_ROOT}/%1.jpg które docelowo miało być zamienione na %{DOCUMENT_ROOT}/%1-mini.jpg
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-2024 Invision Power Services, Inc.