Редирект в nginx всей папке

M1
На сайте с 24.05.2013
Offline
82
294

Задача: Сделать редирект со всех страниц site.com/ru/(*) редирект на site.com/(*)

Пока получилось сделать редирект всех страниц  site.com/ru/(*) на главную, так

location  ~ ^/ru/(.+)$ {
       return 301 https://site.com/;
}

не могу разобраться что поставить после 

return 301 https://site.com/

так не работает 

return 301 https://site.com/(.+)$;

помогите пожалуйста разобраться!

WS
На сайте с 01.11.2008
Offline
135
#1
location  ~ ^/ru/(.+?)$ {
        return 301 https://site.com/$1;
}


M1
На сайте с 24.05.2013
Offline
82
#2

так не вышло

а вот так вроде заработало

location  ~ ^/ru/(.+)$ {
        rewrite ^/(ru)(.*)$ $2 permanent;
}
WS
На сайте с 01.11.2008
Offline
135
#3
max_1985 #:
так не вышло
видимо вы не один в один скопировали, я проверял у себя, всё работает, а с реврайтом вы дважды регулярное выражение проверяете, сначала в location а потом в самом реврайте, масло маслянное
M1
На сайте с 24.05.2013
Offline
82
#4
max_1985 #:
rewrite ^/(ru)(.*)$ $2 permanent;
Владимир #:
видимо вы не один в один скопировали, я проверял у себя, всё работает, а с реврайтом вы дважды регулярное выражение проверяете, сначала в location а потом в самом реврайте, масло маслянное

т.е можно просто так?

rewrite ^/(ru)(.*)$ $2 permanent;
WS
На сайте с 01.11.2008
Offline
135
#5
max_1985 #:

т.е можно просто так?

да, но захватывать ru бессмысленно, лучше так:

rewrite ^/ru(.*)$ $1 permanent;
M1
На сайте с 24.05.2013
Offline
82
#6
location  ~ ^/ru/(.+?)$ {
        return 301 https://site.com/$1;
}

так тоже сработало, видать забыл домен сменить )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий