Редирект в nginx всей папке, кроме корня
Задача: Сделать редирект со всех страниц site.com/en/(*) редирект на site.com/en/ Я написал правило, но оно также включает сам индеркс адреса site.com/en/ и получится бесконечный редирект.
location ~ ^/en/(.*)$ {
return 301 https://site.com/en/;
}
А как добавить исключение адреса https://site.com/en/? Может что-то такое?
location ~ ^/en/(.*)$ {
if ($request_uri !~ ^/en/) {
return 301 https://site.com/en/;
}
}
Ответы (1 шт):
Автор решения: Aleksey Vaganov
→ Ссылка
location ~ ^/en/(.+)$ {
return 301 https://site.com/en/;
}
.+ означает, что после /en/ обязательно должно быть что-то еще. В этом случае вы не получите циклического редиректа