我正在使用带有 nginx/passenger 的 rails。
如果我将 css 文件的过期 http 标头设置为 1 年,如果我修改该文件,它会被浏览器忽略吗(即,它不会请求新版本)?
鉴于 Rails 每次重新启动服务器时都会为每个资产添加不同的时间戳(例如 foo.css?1270165626)?
这是我现在使用的配置(nginx/passenger):
location ~* \.(ico|css|js|gif|jpe?g|png)(\?[0-9]+)?$ {
expires max;
break;
}
答案1
它会忽略它,直到文件名更改为止。因此,如果文件名仅在您重新启动 Web 服务器时更改,那么您必须重新启动它才能应用任何更改。