Nginx перенаправляет подпути 2 уровня


У меня есть следующее правило перенаправления:

        rewrite ^/path1/(.+)$ /path1/index.php?/$1 last;
        rewrite ^/path2/(.+)$ /path2/index.php?/$1 last;
        rewrite ^/path3/(.+)$ /path3/index.php?/$1 last;
        rewrite ^/path4/(.+)$ /path4/index.php?/$1 last;
        rewrite ^/path5/(.+)$ /path5/index.php?/$1 last;
        rewrite ^/path6/(.+)$ /path6/index.php?/$1 last;
        rewrite ^/path7/(.+)$ /path7/index.php?/$1 last;
        rewrite ^/path8/(.+)$ /path8/index.php?/$1 last;
        rewrite ^/path9/(.+)$ /path9/index.php?/$1 last;

Путь - это всего лишь образец, но реальное перенаправление имеет другие имена в путь.

Есть ли более общее правило, чтобы отловить только эту ситуацию с двухуровневыми путями?

Спасибо, что уделили время проверке. : -)

-1
задан 25 February 2016 в 18:49
1 ответ

Основываясь на вашей информации, я бы рекомендовал вам попробовать следующее правило:

rewrite ^/(.+)/(.+)$ /$1/index.php?/$2 last;

Every () - это группа, доступная для переменной.

2
ответ дан 5 December 2019 в 19:24

Теги

Похожие вопросы