更新服务时间最大的网站

问题描述 投票:0回答:1

我有一个SPA网站(VueJS),我每天都开始更新。当我是整个过程的新手时,我从多个来源借用了我的nginx配置的一些部分,最后用Cache-Control: max-age=31536000为我网站上的所有文件提供服务。

在让用户抱怨他们无法找到我最近的更改后,我倾向于认为这可能是由于浏览器将所有内容缓存到2037年:(。这个假设得到了以下事实的支持:遵循我对CTRL +的建议F5解决了他们的问题。

我已经更新了网站不同的缓存规则,但浏览器似乎没有命中我的服务器来获取这些较新的规则。

map $sent_http_content_type $expires {
        default                         off;
        text/html                       off;
        text/css                        off;
        application/javascript          off;
        application/x-javascript        off;
}

...
server {
    ...
    location / {
        add_header Cache-Control 'no-cache, must-revalidate, proxy-revalidate, max-age=0';
        ...
    }
}

有没有办法撤消这个?我是否必须打包并转移到另一个域?

http nginx http-headers cache-control
1个回答
0
投票

如果您为所有页面设置了很长的未来Cache-Control生命周期,并且有一个坚实的用户群,当它有效时访问您的网站...那么简短的回答是:是的。

无法撤消浏览器缓存的使用,因为在当前缓存的资产(在这种情况下,您的网页也不会过期)之前,它不会检查新的缓存策略。

但是你可以解释这样一个事实:人们倾向于改变浏览器,运行操作系统优化器(清除缓存),或者为你知道的用户提供电子邮件活动,指导他们清除浏览器缓存。

你看它的方式不是很好。

© www.soinside.com 2019 - 2024. All rights reserved.