我正在尝试编写一个正则表达式,例如中间有 /admin 并以 .css 或 .js 或其他格式结尾。
http://example.com/admin/static/style.css
(应该管用)
http://example.com/admin/static/vendor.js
(应该管用)
http://example.com/static/style.css
(不应该起作用)
我正在尝试在 nginx 位置块中使用它。我试过这个
location /admin/\.(css|js)${
}
但不工作。
有任何想法吗?
答案1
您可能遗漏了“admin”和“css/js”之间的部分。这可能会起作用:
(.*)\/admin(.*)\.(css|js)
我还在(.*)
开头添加了,这意味着前面/admin
可能会有其他字符。
答案2
请尝试进行不区分大小写的匹配 ( ~*
):
location ~* ^/admin/.+\.(css|js)$ {
# more configuration
}
添加其他文件类型,以|
like分隔^/admin/.+\.(css|js|png|gif|jpe?g)$
。