proxy_intercept_errors on;
location ~* ^/shop/(\d+)/menu{
set $mobile 0;
set $shopid $1;
set $hostid 0;
if ( $http_user_agent ~* "(Android|iPhone|Windows Phone)" ){
set $mobile "${mobile}1";
}
if ( $host ~* "m\.dianping\.com" ){
set $hostid "${hostid}1";
}
if ( $http_cookie !~* "mode=pc"){
set $mobile "${mobile}1";
}
if ( $hostid = "01" ){
proxy_pass http://app_servers/shop/$shopid/mobilemenu;
break;
}
if ( $mobile = "011" ){
rewrite ^/(.*)$ http://mobile-servers/$1 redirect;
break;
}
proxy_pass http://app_servers;
break;
}
location ~* ^/shop/(\d+)/dish-(.*){
set $mobile 0;
set $shopid $1;
set $dishurl $2;
if ( $http_user_agent ~* "(Android|iPhone|Windows Phone)" ){
set $mobile "${mobile}1";
}
if ( $http_cookie !~* "mode=pc"){
set $mobile "${mobile}1";
}
if ( $mobile = "011" ){
rewrite ^/(.*)$ http://mobile-servers/shop/$shopid/product-$dishurl redirect;
break;
}
proxy_pass http://app_servers;
break;
}
location ~* ^/map/shop/(\d+)$ {
set $shopid $1;
rewrite ^/(.*)$ http://www.servers/shop/$shopid/map permanent;
proxy_set_header Host "www.servers";
break;
}
location ~* ^/shop/(\d+)(/map|/)?$ {
set $mobile 0;
if ( $http_user_agent ~* "(Android|iPhone|Windows Phone)" ){
set $mobile "${mobile}1";
}
if ( $http_cookie !~* "mode=pc"){
set $mobile "${mobile}1";
}