Nginx-Proxy oder Neuschreiben, je nach Benutzerprogramm
Ich bin neu in Nginx, komme aus Apache und ich möchte im Grunde Folgendes tun:
Basierend auf User-Agent: iPhone: Weiterleitung zu iphone.meinedomain.com
android: Weiterleitung zu android.meinedomain.com
Facebook: Reverse-Proxy zu otherdomain.com
alle anderen: Weiterleiten an ...
und probierte es auf folgende Weise:
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;
}
Aber jetzt bekomme ich einen Fehler beim Start von 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"
Und ich verstehe nicht, wie es geht oder was das Problem ist.
Vielen Dank