Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [mod_rewrite] Problem z regułką, Powinna działać ale nie chce...
Sephirus
post 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...
Go to the top of the page
+Quote Post
nospor
post 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

Go to the top of the page
+Quote Post
Sephirus
post 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 sad.gif


--------------------
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...
Go to the top of the page
+Quote Post
sf
post 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.
Go to the top of the page
+Quote Post
Sephirus
post 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 , wink.gif


--------------------
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...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 12.06.2024 - 12:13