Regex 为不同目录中的静态文件重写NGINX URL
能帮我解决这个问题吗。 我想写下所有发生的事情Regex 为不同目录中的静态文件重写NGINX URL,regex,nginx,Regex,Nginx,能帮我解决这个问题吗。 我想写下所有发生的事情 name.css.v=abc1234.css 到 及 到 我试过使用 rewrite /([a-z,\d]+.css)(.v=[a-z,\d]+.css$)/i $1 last; 但它不起作用 顺便说一句, 在不同的目录中有文件,例如 /a/b/c/something.css.v=sssaa1223.css /d/e/f/anotherfile.css.v=12333asss.css /g/h/i/somejsfile.js.v=123s
name.css.v=abc1234.css
到
及
到
我试过使用
rewrite /([a-z,\d]+.css)(.v=[a-z,\d]+.css$)/i $1 last;
但它不起作用
顺便说一句,
在不同的目录中有文件,例如
/a/b/c/something.css.v=sssaa1223.css
/d/e/f/anotherfile.css.v=12333asss.css
/g/h/i/somejsfile.js.v=123sdsd.js
/j/k/l/alienfile.js.v=askdlsk12asd.js
不确定nginx语法,但是这个正则表达式可以很好地解决您的问题:
rewrite/(\w+(css|js))(.v=.*)/i$1 last代码>
以下内容现在对我有用:)location~*\(css | js){try_files$uri$uri/@rules;}location@rules{重写^([a-zA-Z\d\S]+\.css)([\SA-zA-Z,\d]+\.css)$$1 last;}
name.js
rewrite /([a-z,\d]+.css)(.v=[a-z,\d]+.css$)/i $1 last;
/a/b/c/something.css.v=sssaa1223.css
/d/e/f/anotherfile.css.v=12333asss.css
/g/h/i/somejsfile.js.v=123sdsd.js
/j/k/l/alienfile.js.v=askdlsk12asd.js