I am using wordpress with this type of permalink:
/%year%/%monthnum%/%postname%/
if I use this type of url: example.com/2010/03/तकनीक
it treats this url like this example.com/2010/03/ (By ignoring unicode chars) and displays March 2010 archive list.
if I use english url: example.com/2010/03/technology then it works perfectly.
This problem occurs even on tags page: for example example.com/tag/इंटरनेट is treated like example.com/tag/ and displays 404 page.
Why wordpress is ignoring unicode chars?
If I use default querystring structure then it works perfectly even with unicode characters.
Server Info: IIS7 Win2008 Server (Url rewriting enabled) Wordpress 2.9.2
The KB article provides a hotfix which didn't work for my windows version and/or code to use using Start > Run which also wasn't effective and didn't add the registry key for some reason in my case on Windows 7 Ultimate and IIS 7.5.7600
I had to do one of the following choices:
1) Add the Reg. Key manually under HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\w3svc\Parameters by adding new Multi-string value >> Value Name : FastCGIUtf8ServerVariables Value Data (two lines): REQUEST_URI PATH_INFO
2 ) Execute the code using cmd.exe as an administrator then paste the code and excute
In both ways remember to execute the iisreset command on cmd.exe as administrator after the previous step.
For an overview of the problem, review:
http://ruslany.net/2010/03/important-update-for-iis-7-0-fastcgi-module/
this refers you to the now outdated:
http://ruslany.net/2010/02/fastcgi-module-differences-across-iis-versions/
My own situation was fixed by applying Win 7 SP1 but, interestingly, I was still left with applying the registry hack that is described in the Hotfix:
http://support.microsoft.com/kb/2277918
I am running WAMP server on local machine. I tested $_SERVER['PATH_INFO'] on my IIS7 web server and found that it has some unicode problem. Wordpress uses path_info to handle urls. I created a file test.php with following code:
If I request http://example.com/test.php/कुछशब्द/कुछऔरशब्द/english
then I get this output
----****----
/???????/?????????/english ----****---- path_info is converting unicode hindi chars to ?????. That means there is some problem in path_info variable in my server. Do you know any setting IIS7 that can cause such type of problem?
The same code works perfectly fine on my local Apache Windows server.