First post on the list, so please be gentle :)
I asked this question on stackoverflow, but wasn't getting any love there, and then realised I should go to the source!
I managed to get nginx (1.0.14) compiled with the latest PCRE (8.30), changed the rewrite rule to use UTF8, but it still fails in some cases with unicode characters.
My rewrite rule is
location / {
try_files $uri $uri/ /index.php;
rewrite "(*UTF8)^/imgthumb/(.*)$" /timthumb.php?$1 last;
}
This works fine with images without unicode, but fails when the filename contains unicode characters.
so `/imgthumb/src=/wp-content/uploads/8姉妹の古いマトリョーシカ.jpg&h=121&w=137&zc=1` **fails**
but `/imgthumb/src=/wp-content/uploads/MOD0005.jpg&h=121&w=137&zc=1` **works** fine.
On Apache using .htaccess rewrite rule, it works with both
`RewriteRule ^/imgthumb/(.*)$ /timthumb.php?$1 [L]`
I noticed that the problem seems to stem from the fact that the PHP script gets only one parameter (src) into the `$_GET` array with nginx, but with apache rewrite it's broken down to different parameters...
Is my nginx rewrite rule wrong? Is there a way to make this work?