Wordpress + nginx infinite redirect loop
Here is the problem:
if (!-f $request_filename){
rewrite ^/(.+)$ /index.php?$1& last;
}
This is one of the most common nginx misconfigurations.
Replace these three lines with try_files
:
try_files $uri $uri/ /index.php;
See also the WordPress wiki entry on nginx.
(BTW, your .htaccess does nothing, since you are not using Apache.)