Рейтинг:0

Nginx перенаправляет путь на другой путь

флаг cn

Я пытаюсь перенаправить URL-адреса с помощью Ninx, но я изо всех сил пытаюсь понять это правильно:

example.com/{dynamic1}/foo/bar/{dynamic2} к example.com/{dynamic1}/bar/{dynamic2}

в основном я пытаюсь удалить /фу/ часть URL-адреса.

я пробовал следующее:

расположение ~* ^/(.*)/foo/bar/(.*)$ {
  вернуть 302 ^/$1/bar/$2?$args;
} 

а также:

расположение ~ ^/([^/]*)/foo/bar/(.*)$ {
  вернуть 302 ^/$1/bar/$2?$args;
}

но это выдает ошибку 414 Request-URI слишком большой и в конечном итоге URL-адрес (сокращенный для ясности):

dynamic1/cams/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E /dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/ динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1 /bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/ бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар /%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/%5E/dynamic1/bar/ %5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/динамика1/бар/%5E/ динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1/бар/%5E/динамический1 /бар/%5E/динамический1/бар/ %5E/динамический1/бар/%5E/динамический1/бар/динамический2?

Что я делаю не так?

Обратите внимание, что как только я сделаю это правильно, я заменю 302 на 301.

Рейтинг:0
флаг cz

Вы поставили знак вставки в начале целевого URL-адреса, на который, как представляется, вы намеревались перенаправить. Это не место там, и именно поэтому %5E появляется неоднократно.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.