Se você tem uma versão nova do nginx (0.9.6+), você pode fazer isso com um mapa :
map $http_user_agent $myindex {
default /browser_index.html;
~iPhone /mobile_index.html;
}
server {
listen 80;
root /var/www;
location = / { rewrite ^ $myindex; }
}
Se você não precisa de um redirecionamento interno (o que você provavelmente não faria se estivesse apenas servindo arquivos estáticos para os índices), você poderia adicionar um sinalizador 'break' à reescrita e evitar o redirecionamento interno. / p>
EDIT: Se você estiver usando uma versão mais antiga, você poderia fazer algo assim:
server {
listen 80;
root /var/www;
location = / {
set $myindex /browser_index.html;
if ($http_user_agent ~ iPhone) {
set $myindex /mobile_index.html;
}
rewrite ^ $myindex;
}
}
novamente, usando o sinalizador de quebra se você não precisar do redirecionamento interno.