Quantcast
Channel: Nginx Forum - Nginx Mailing List - Russian
Viewing all articles
Browse latest Browse all 3102

location + rewrite и (де)кодирование URI (1 reply)

$
0
0
Здравствуйте, All!

Есть такой фрагмент документации на директиву location:

Синтаксис: location [ = | ~ | ~* | ^~ ] uri { ... }

Для сопоставления используется URI запроса в нормализованном виде,
после декодирования текста, заданного в виде “%XX”, преобразования
относительных элементов пути “.” и “..” в реальные и возможной
замены двух и более подряд идущих слэшей на один.

Есть такой фрагмент конфига:

location ~ ^/wiki/(?<title>.*) {
return 301 https://$host/$title$is_args$args;
}

Судя по документации, этот фрагмент конфига не должен работать, потому
что в $title ведь попадает уже декодированный русский текст из location?

Но почему-то эксперимент с помощью curl показывает, что в редиректе
возвращается текст закодированный в виде “%XX”, а не обычный Unicode.

Почему все работает именно так и как тогда надо понимать документацию?

В каких случаях в nginx необходимо вручную кодировать/декодировать
фрагменты uri и/или переменные $arg_имя а когда этого делать не надо?

--
Best regards,
Gena

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Viewing all articles
Browse latest Browse all 3102

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>