Proxy Nginx ou de réécrire en fonction de l'agent utilisateur

je suis nouveau sur nginx, venant de apache et en gros, je veux faire ce qui suit:

Basé sur user-agent:
iPhone: rediriger vers iphone.mydomain.com

android: rediriger vers android.mydomain.com

facebook: reverse proxy otherdomain.com

tous les autres: rediriger vers ...

et il a essayé de la façon suivante:

location /tvoice {
   if ($http_user_agent ~ iPhone ) {
    rewrite     ^(.*)   https://m.domain1.com$1 permanent;
   }
   ...
   if ($http_user_agent ~ facebookexternalhit) {
    proxy_pass         http://mydomain.com/api;
   }

   rewrite     /tvoice/(.*)   http://mydomain.com/#!tvoice/$1 permanent;
}

Mais maintenant j'ai une erreur lors du démarrage de nginx:

nginx: [emerg] "proxy_pass" cannot have URI part in location given by regular expression, or inside named location, or inside "if" statement, or inside "limit_except"

Et je n'obtiens pas comment le faire ou quel est le problème.

Grâce

OriginalL'auteur user984200 | 2012-05-16