[mod_rewrite] Problem z regułką, Powinna działać ale nie chce... |
[mod_rewrite] Problem z regułką, Powinna działać ale nie chce... |
29.03.2012, 13:16:58
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Witam. Normalnie nie zawracałbym nikomu głowy ale siedzę nad tym już jakąś chwilę...
Otóż mam w regułce wyrażenie typu: Kod strona/podstrona/(.+)/(.+)/(.*)/(.*)/(.+) Przykładowo w takiej regułce: Kod RewriteRule ^strona/podstrona/(.+)/(.+)/(.*)/(.*)/(.+)$ index.php?a=$1&b=$2&c=$3&d=$4&e=$5 [L] I teraz mam adres załóżmy: strona/podstrona/1/2/3/4/5 - przechodzi (wszystko gra) ale już strona/podstrona/1/2///5 - już nie przechodzi (dokładnie rzecz biorąc reguła ta nie jest wg htaccess spełniona) Mimo że zastosowałem .* czyli coś co być może ale nie musi to dla podanego adresu powyżej ta reguła nie działa... :/ Oczywiście jeśli wrzuciłbym bym to w PHPowy preg_match to śmiga (sprawdzałem) ale w htaccess nie chce... Ktoś ma jakiś pomysł? :/ -------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
29.03.2012, 13:22:15
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 478 Pomógł: 6302 Dołączył: 27.12.2004 |
Zamiast
.* spróbuj .*? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
29.03.2012, 13:25:47
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Dzięki nospor ale niestety nic to nie zmieniło
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
29.03.2012, 13:40:16
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) |
Problem stanowi sam zapis. Nie można stosować dwóch / obok siebie. Adres www.wp.pl////// prowadzi do www.wp.pl/. Następne / są ignorowane. Dlatego wiele stron stosuje przecinki, a nie /.
Ten post edytował sf 29.03.2012, 13:41:02 -------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
29.03.2012, 13:56:04
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 527 Pomógł: 438 Dołączył: 28.06.2011 Skąd: Warszawa Ostrzeżenie: (0%) |
Bingo! Dzięki @sf masz całkowitą rację - nie przemyślałem tego - dodatkowo sama . jest za mocna więc albo trzeba dać ? (ungreedy) - THX @nospor albo uzyć czegoś w rodzaju [^/]* tylko oczywiście / zamienić na inny znak - lub ,
-------------------- If you're good at something, never do it for free.
Potrzebujesz skryptu JS lub PHP - szukasz kogoś kto przetestuje twoją aplikację pod względem bezpieczeństwa? Szybko i solidnie? Napisz ;) Mój blog - Jak zwiększyć wydajność front-endu - O buforowaniu wyjścia w PHP słów kilka... |
|
|
Wersja Lo-Fi | Aktualny czas: 12.06.2024 - 12:13 |