Nginx proxy lub przepisuj w zależności od agenta użytkownika

Jestem nowy w nginx, przychodzę z apache i zasadniczo chcę:

Na podstawie agenta użytkownika: iPhone: przekierowanie do iphone.mydomain.com

android: przekieruj do android.mydomain.com

facebook: odwrotne proxy do otherdomain.com

wszystkie inne: przekierowanie do ...

i wypróbowałem to w następujący sposób:

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;
}

Ale teraz pojawia się błąd podczas uruchamiania 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"

I nie mam pojęcia, jak to zrobić lub jaki jest problem.

Dzięki

questionAnswers(1)

yourAnswerToTheQuestion