没有 "resolve" 的 nginx 位置匹配扩展中的正则表达式
Regex in nginx location match extension without "resolve"
我不是正则表达式的神,并且坚持使用复杂的位置正则表达式。
我的 nginx 配置中有一个位置块,以确保缓存图像和其他媒体。但是,如果 "resolve" 在 URL 中,则它不应该匹配并跳过该块。我无法让它工作。我看过一个负面的 lookbegind,但我想我不完全理解它是如何工作的。
这是我的街区:
location ~* \.(?:css|js|gif|jpeg|jpg|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
//caching stuff
}
它应该匹配以下 URL:
/media/cache/ps_product_admin_thumb/productimages/image.jpg
但是不是以下:
/media/cache/resolve/ps_product_admin_thumb/productimages/image.jpeg
谁能告诉我正确的方向?
前瞻可能有所帮助:
^(?!.*resolve).*\.(?:css|js|gif|jpeg|jpg|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$
(?!.*resolve)
确保字符串中不存在 resolve
。
我不是正则表达式的神,并且坚持使用复杂的位置正则表达式。
我的 nginx 配置中有一个位置块,以确保缓存图像和其他媒体。但是,如果 "resolve" 在 URL 中,则它不应该匹配并跳过该块。我无法让它工作。我看过一个负面的 lookbegind,但我想我不完全理解它是如何工作的。
这是我的街区:
location ~* \.(?:css|js|gif|jpeg|jpg|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$ {
//caching stuff
}
它应该匹配以下 URL:
/media/cache/ps_product_admin_thumb/productimages/image.jpg
但是不是以下:
/media/cache/resolve/ps_product_admin_thumb/productimages/image.jpeg
谁能告诉我正确的方向?
前瞻可能有所帮助:
^(?!.*resolve).*\.(?:css|js|gif|jpeg|jpg|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm|htc)$
(?!.*resolve)
确保字符串中不存在 resolve
。