Acho que algo assim deveria resolver o problema.
No meu exemplo, para testar o que foi retornado, adicionei a variável $topdir
no cabeçalho.
map $request_uri $topdir {
~(?<captured_topdir>^/[a-zA-Z0-9]+[/]) $captured_topdir;
}
server {
listen 80;
root /var/www;
index index.html;
location / {
add_header X-Top-Dir $topdir;
}
}
-
http://mydomain.com/dir/sub/slug/page.html
deve retornar/dir/
-
http://mydomain.com
ouhttp://mydomain.com/page.html
não deve retornar nada