apache. mod_rewrite.

DavyJohnes
На сайте с 05.01.2011
Offline
84
429

Имеется 2 вопроса по Mod_rewrite.

2. Например. Имеется такое правило:


RewriteRule ^search/(.*)$ index.php?q=$1

в таком случаем если в обратится по адресу /search/asdasdasdas&asdasdasdasd то скрипту в качестве параметра q передается

asdasdasdas&asdasdasdasd

Из чего становится ясно что значение q на "&" кончается, хотя на самом деле параметр был больше.

3. rewriterule аналогично. К серверу по адресы /search/%D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82, где в %D0%BF%D1%80%D0%B8%D0%B2%D0%B5%D1%82 содержится url-кодированный слэш. На это апач вообще ругается, воспринимает кодированный слэш как обычный и говорит что такого урла не существует.

Как с этим бороться ?

https://handy-tools.io (https://handy-tools.io) - Набор полезных утилит для всех!
[umka]
На сайте с 25.05.2008
Offline
456
#1

2.

Разбирайте строку в php вручную.

list(,$query)=explode('=',$_SERVER['QUERY_STRING'],2);

3.

Не совсем понятно. Приведите правило целиком.

А... это видимо то же, что и в предыдущем вопросе :)

rawurlencode() делаете?

Лог в помощь!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий