我尝试将正则表达式匹配为app.yaml中的目录名的尝试不起作用:
- url: /v1_.* static_dir: static/v1 expiration: "364d"
尽管此官方规范说正则表达式语法受支持。有办法使这项工作吗?
即/v1_2014-01-29/img/logo.png应该匹配静态文件/static/v1/img/logo.png。
/v1_2014-01-29/img/logo.png
/static/v1/img/logo.png
我使用Google App Engine服务Go Webapp。
我想最大程度地延长浏览器缓存的寿命,最大程度地减少请求数,并仍提供我的css / js / png的新版本,并且我相信修改文件名是实现此目的的最佳实践。另外,由于添加变量querystring(/v1/img/logo.png?2014-01-29)可能会导致代理和缓存问题,因此我更喜欢显示变量目录名(/v1_2014-01-29/img/logo.png),指向相同的基础服务器目录。
/v1/img/logo.png?2014-01-29
在我看来,超出URL定义匹配范围(从头开始匹配)的URL的任何部分都将附加到static_dir。
因此,/v1_2014-01-29/img/logo.png如果文件路径为static/v1/img/logo.png(使用Python尝试),则以下处理程序应匹配:
static/v1/img/logo.png
- url: /v1_(\d+-?)+ static_dir: static/v1