Apache, mod_rewrite, русские буквы.

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

Тест проводился под виндой, apache 2.2.17, браузер - Opera, все страницы сайта в кодировке cp1251.

Ситуация такая:

Имеется правило


RewriteRule ^(.+)/$ index.php?keyword=$1

Если в адресной строке набрать localhost/привет/, то в в скрипте в переменной $_GET['keyword'] оказываются кракозябры, если набрать localhost/index.php?keyword=привет, строка привет тут же волшебным образом преобразуется в строку с процентами (%AF%0C и т.д.), которую потом можно преобразовать с помощью urldecode и получить исходную строку "привет".

Так вот собственно вопрос: как заставить mod_rewrite так передавать все русские символы в виде строки с процентами?

P.S.: гугление приводить к установке флага , что в моей ситуации ни как не меняет результат.

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

подниму тему, вопрос так и не решился

ДП
На сайте с 23.11.2009
Offline
203
#2

А что за кракозябры получаются? Как-то надо было русские буквы передавать - я на сервере просто обрабатывал то, что приходило.

siv1987
На сайте с 02.04.2009
Offline
427
#3

Никак. реврайт не превращает крокозябры. Все конвертирование делается в скрипте.

urldecode( $_GET['key'] );

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