Несколько переписываний Nginx не работают должным образом - PullRequest
0 голосов
/ 04 июня 2018

Это перезапись для обработки запросов GET в виде подкаталогов

rewrite ([A-Za-z0-9-]+)/([A-Za-z0-9-_]+)$ /__api/$1.php?r=$2 last;
rewrite ([A-Za-z0-9-]+)/([A-Za-z0-9-_]+)/([A-Za-z0-9-_]+)$ /__api/$1.php?r=$2&o=$3 last;

hello-world/var1_test до /__api/hello-world.php?r=var1_test -> Правильная работа

hello-world/var1_test/var2_test до /__api/hello-world.php?r=var1_test&o=var2_test -> Возвращает 404Журнал показывает, что этот запрос фактически обращается к hello-world / var1_test / var2_test.Короче говоря, перезаписи не работают.

Но кажется, что первая перезапись работает правильно, а вторая перезапись не работает.

Что-то не так в коде?

РЕДАКТИРОВАТЬ: переключение строки сделает перезапись на первой строке пригодной для использования.но не вторая строка

1 Ответ

0 голосов
/ 04 июня 2018

Решено самостоятельно.
Речь шла о неправильной конфигурации каталога, о котором я забыл начало и конец URI.используя ^ и $ в регулярном выражении

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...