Еще можете попробовать регулярку в локешне, как описано тут:
  
http://superuser.com/questions/330194/how-to-i-get-variables-from-location-in-nginx

location ^/(?<country>[^/]*)/(?<lang>[^/]*)/(?<rest>.*)$ {
  rewrite ^ /$rest?country=$country&lang=$lang;
  # или
  return /$rest?country=$country&lang=$lang;
}

Больше про правильный подход к редиректам тут:
  http://nginx.org/en/docs/http/converting_rewrite_rules.html


On Tuesday, 1 December 2015 at 21:31, Dmitry Ivanov wrote:

> > например так
> > location / {
> > rewrite ^/([^/]*)/([^/]*)/(.*)$ /$3?country=$1&lang=$2;
> > }
> >  
>  
>  
> Первые две "*" лучше заменить на {2}. Это и по условию задачи, и не
> ясно, что там в запросе может прилететь.
>  



_______________________________________________
nginx-ru mailing list
[email protected]
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Ответить