Jak regexować ścieżkę i wszystkie podścieżki oprócz jednej podścieżki?


0

W przypadku aplikacji internetowej potrzebuję Alias ​​Dopasować ścieżkę i wszystkie jej podścieżki w Apache, ale muszę wykluczyć ścieżkę podrzędną.

Przykład:

AliasMatch /webapp /usr/share/webapp
Prawidłowe patsy byłyby /abc.dom/webapp /abc.dom/webapp/somepath/do.php

ale muszę też
AliasMatch /webapp/static /usr/share/webapp/media/static
sprawdzić, czy będą ważne/abc.dom/webapp/static/ /abc.dom/webapp/static/css/

Potrzebuję więc wyrażenia regularnego, które pasuje, /webapp/*ale nie /webapp/static/*i odwrotnie.

Dowolny pomysł? Wszystko, czego próbowałem, zakończyło się już na pierwszym lub drugim, ale nie na obu razem.


twój tytuł mówi „z wyjątkiem jednej podścieżki”, ale nie ma odniesienia do tego wyjątku w tekście. Dodaj kilka przykładowych ścieżek, które powinny być dopasowane, a także to, co nie powinno być, bardzo trudno jest teraz zrozumieć twoje pytanie.
Máté Juhász

Odpowiedzi:


1
AliasMatch "^/webapp/((?!static/).*)$" "/usr/share/webapp/$1"
AliasMatch "^/webapp/static/(.*)" "/usr/share/webapp/media/static/$1"
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.