# rewrite direct children of /lunch-box but not grandchildren+
rewrite ^(/lunch-box/)[^/]+/?$ $1 last;
Прогулка по регулярному выражению ^(/lunch-box/)[^/]+/?$
^
соответствует началу строки (rewrite
правила соответствуют пути, а не полному URI) (/lunch-box/)
соответствует буквенному тексту /lunch-box/
и сохраняет его для $1
[^/]+
соответствует одному или нескольким символам, не являющимся прямым sla * sh /?
соответствует нулю или одному прямому слэ sh $
соответствует концу строки
Это удаляет путь, пройденный нами сохраняется как $1
, но только если этот путь является прямым потомком.