Nginx:停用html单页面应用的缓存

时间:2016-01-04 17:07:33

标签: javascript angularjs caching nginx

我使用AngularJS和gulp为我的应用设置了单页应用。每次运行gulp build时,它都会在缩小的JavaScript和CSS(例如app98D9898.css)中编译我的资产。对于每个构建,数字将随机变化。

我有一个名为index.html的HTML页面,它会尝试加载CSS和JavaScript文件。

到目前为止,一切都按预期工作。

我使用NGINX作为代理来提供我的静态文件。我遇到的一个大问题是:Chrome和Firefox似乎正在缓存index.html文件。因此,如果我构建我的应用程序的新版本,浏览器将继续加载旧版本。

我正在寻找使用NGINX来指定不缓存index.html文件来解决此问题的解决方案。你知道我该怎么办吗?

1 个答案:

答案 0 :(得分:1)

您可以在服务器块中设置一个位置,以便为html文件提供较短的过期时间并禁用代理缓存。

location ~* \.(html)$ {
   expires              1h;
   proxy_cache          off;
   ...
}