WordPress игнорирует символы Unicode в URL-адресе

Я использую wordpress с этим типом permalink:

/% Год% /% monthnum% /% postname% /

если я использую этот тип URL: example.com/2010/03/ तकनीक

он рассматривает этот url как this example.com/2010/03/ (игнорируя символы Unicode) и отображает список архивов марта 2010 года.

если я использую английский url: example.com/2010/03/technology, тогда он отлично работает.

Эта проблема возникает даже на странице тегов: например, example.com/tag/ इंटरनेट рассматривается как example.com/tag/ и отображает страницу 404.

Почему WordPress игнорирует символы Unicode?

Если я использую структуру запросов по умолчанию, то она отлично работает даже с символами Unicode.

Информация о сервере: Сервер IIS7 Win2008 (перезапись URL) WordPress 2.9.2

Для обзора проблемы просмотрите:

http://ruslany.net/2010/03/important-update-for-iis-7-0-fastcgi-module/

это относится к теперь устаревшим:

http://ruslany.net/2010/02/fastcgi-module-differences-across-iis-versions/

Моя собственная ситуация была исправлена ​​с помощью Win 7 SP1, но, что интересно, мне все еще оставалось применение хакера реестра, описанного в исправлении:

http://support.microsoft.com/kb/2277918

Я запускаю WAMP-сервер на локальной машине. Я тестировал $ _SERVER ['PATH_INFO'] на своем веб-сервере IIS7 и обнаружил, что у него есть проблема с unicode. WordPress использует path_info для обработки URL-адресов. Я создал файл test.php со следующим кодом:

Если я попрошу http://example.com/test.php/ कुछशब्द / कुछऔरशब्द / english

то я получаю этот вывод

—- **** —-

/ ??????? / ????????? / english —- **** —- path_info конвертирует символы хинди unicode в ?????. Это означает, что в моей переменной есть переменная path_info. Вы знаете какой-либо параметр IIS7, который может вызвать такой тип проблемы?

Тот же код отлично работает на моем локальном сервере Apache Windows.

Статья в базе данных содержит исправление, которое не работает для моей версии Windows и / или кода для использования с помощью « Пуск»> «Пуск», который также не был эффективным, и по какой-то причине не добавил раздел реестра в Windows 7 Ultimate и IIS 7.5.7600

reg add HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\w3svc\Parameters /v FastCGIUtf8ServerVariables /t REG_MULTI_SZ /d REQUEST_URI\0PATH_INFO 

Я должен был сделать один из следующих вариантов:

1) Добавьте рег. Ключ вручную под HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ w3svc \ Parameters, добавив новое многострочное значение >> Имя значения: FastCGIUtf8ServerVariables Значение данных (две строки): REQUEST_URI PATH_INFO

2) Выполните код, используя cmd.exe, в качестве администратора, затем вставьте код и запустите

В обоих случаях запомните выполнение команды iisreset на cmd.exe в качестве администратора после предыдущего шага.