5
使用Nginx提供静态文件时禁用缓存(用于开发)
我们正在使用Nginx在开发平台上提供静态文件。由于它是一个开发平台,因此我们希望禁用缓存,以便将每个更改都传播到服务器。VHost的配置非常简单: server { server_name static.server.local; root /var/www/static; ## Default location location / { access_log off; expires 0; add_header Cache-Control private; } } 当我们访问HTML文件(HTTP://static.server.local/test.html),我们没有任何问题:服务器返回一个代码304未修改只要该文件没有改变,和200 OK与响应更改文件后的修改文件。 但是,它与Javascript或CSS文件的行为似乎有所不同。更改文件后,我们将收到200 OK预期的响应,但带有旧文本。 Nginx中是否有内部缓存机制可以解释这种行为?还是我们应该添加的一些配置? 附带说明一下,这是修改文件后Nginx返回的标头(似乎正确): Accept-Ranges:bytes Cache-Control:max-age=0 private Connection:keep-alive Content-Length:309 Content-Type:text/css Date:Fri, 13 May 2011 14:13:13 GMT Expires:Fri, 13 May 2011 14:13:13 GMT Last-Modified:Fri, 13 May 2011 …