Получить часть от $ uri NGINX - PullRequest
0 голосов
/ 08 ноября 2019

Сейчас я изучаю директиву местоположения в NGINX, затем у меня есть требование получить только некоторую часть $ uri.

Например, URL равен http://example.com/2019/10/92/cat/file.mp4, тогда в NGINX с использованием $ uri получим: /2019/10/92/cat/file.mp4. Есть ли способ получить только часть $ uri?

Моя цель - получить имя dir с определенной глубиной уровня, например: /2019/10/92/cat с URL http://example.com/2019/10/92/cat/file.mp4

Thisдолжен работать с любым URL-адресом и по-прежнему обеспечивать тот же уровень глубины dir:

http://example.com/2019/10/92/cat/file.mp4 -> /2019/10/92/cat http://example.com/2019/10/92/cat/cat_2/file.mp4 -> /2019/10/92/cat

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 08 ноября 2019

Вы должны использовать регулярное выражение.

location ~* ^/(?<somepartfromuri>.*)/*.mp4 {
      set $myvar ${somepartfromuri};

(не проверено)

...