Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: htaccess problem z procentami
Forum PHP.pl > Forum > Serwery WWW
ujex
Witam, zrobiłem kiedyś wyszukiwarkę, tak to wygląda w htaccess:

Kod
RewriteRule ^szukaj/(.*)/([0-9]*)$ /index.php?controller=solr&action=show&q=$1&page=$2 [L]


Dzisiaj zauważyłem, że nie działają mi linki, które mają w sobie znak procenta, np.:
example.pl/szukaj/22%/
serwer daje odpowiedź:
Kod
400 Bad Request

Your browser sent a request that this server could not understand.


Pytanie jest takie, czy mogę coś zmienić w htaccess, żeby to żądanie docierało do php? Czy może coś z ustawieniami serwera?
erix
Bo takie znaki winne być zakodowane.
by_ikar
Kod
RewriteRule ^szukaj/(.*)/([0-9]+)?$ /index.php?controller=solr&action=show&q=$1&page=$2 [L]


Sprawdź czy zadziała smile.gif
erix
Znak procentu nie przejdzie niezakodowany, tak ciężko zrozumieć?

Jest on przetwarzany zanim demon odpali Rewrite, nie przebijajcie głową betonowego muru.
by_ikar
Faktycznie.. Nie miałem nigdy takiego problemu, ponieważ zawsze przez każdy tekst przelatywałem urlencode i wtedy taki procent przechodzi.
ujex
W zeszłym tygodniu przeniosłem wyszukiwarkę na lighttpd i tam wszystko działa, adres:
szukaj.example.pl/szukaj/22%/ jest poprawnie odczytywany i szukana fraza "22%" dociera do solr'a.
na apache mam teraz przekierowania na nową szukajkę, która jest w subdomenie i tam problem pozostał. Stary link nie dociera do .htaccess i nie przekierowuje na subdomenę na której jest już lighttpd i żądania te są poprawnie odczytywane.

Jak widzę z waszych wypowiedzi to chyba nie mam za bardzo możliwości żeby odzyskać te linki, szkoda bo w google narzędzia dla webmasterów wiedzę że jest ich ok 2000.
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.