以下一直在为我cachingcss和js:
location ~ "^(.*)\.(min.)?(css|js)$" { expires max; }
结果:
$ curl -I http://mysite.com/test.css HTTP/1.1 200 OK Server: nginx Date: Thu, 16 Jan 2014 18:55:28 GMT Content-Type: text/css Content-Length: 19578 Last-Modified: Mon, 13 Jan 2014 18:54:53 GMT Connection: keep-alive Expires: Thu, 31 Dec 2037 23:55:55 GMT Cache-Control: max-age=315360000 X-Backend: stage01 Accept-Ranges: bytes
我正在尝试为我的js / css使用10位数的unix时间戳获取版本设置,并且遇到与下面的有效正则expression式匹配的正则expression式问题。
location ~ "^(.*)([\d]{10})\.(min\.)?(css|js)$" { expires max; }
结果:
$ curl -I http://mysite.com/test_1234567890.css HTTP/1.1 200 OK Server: nginx Date: Thu, 16 Jan 2014 19:05:03 GMT Content-Type: text/css Content-Length: 19578 Last-Modified: Mon, 13 Jan 2014 18:54:53 GMT Connection: keep-alive X-Backend: stage01 Accept-Ranges: bytes
我会尝试没有\ d括号,括号通常用于连续的字符或数字,你的括号表示匹配任何字符'\'或'd'
"^(.*)(\d{10})\.(min\.)?(css|js)$"
另外,您是否专门保存了您正在捕获的群组信息?
为了清楚下面的评论。
开始简单。
"^.*[0-9]*\.css$" "^.*[:digit:]*\.css$" "^.*\d*\.css$"
根据哪些作品,使用该基地的数字和展开如下。
"^.*\d{10}\.(min\.)?(css|js)$"
如果你也是匹配http / https,你可以用下面的http / s东西来启动它,记得改变到哪个数字符号工作。
"^http(s)?://.*[0-9]{10}\.(min\.)?(css|js)$"