f5是普通刷新,仅加载缓存文件,返回304状态码;ctrl+f5是强制刷新,清空缓存并全量重载资源,返回200状态码。调试或更新资源后应优先使用强制刷新。

网页卡在加载状态、内容没更新、样式错乱或按钮点击无反应时,直接按F5往往刷不出新内容,必须区分普通刷新和强制刷新才能真正解决问题。
F5刷新:只重载缓存里的旧文件
按键盘上的 F5 键,浏览器会向服务器发送带 If-Modified-Since 或 If-None-Match 头的请求。
服务器收到后,比对时间戳或ETag,发现文件没变,就返回 304 Not Modified 状态码。
浏览器立刻从本地磁盘缓存(from disk cache)读取HTML、CSS、JS等资源,页面“看似刷新了”,实则加载的全是旧版本。
这一步操作起来很简单,但【如果你刚改完代码、上传了新CSS、后台发布了新文章,F5根本不会生效】。
Ctrl+F5强制刷新:清空缓存,全量重拉
同时按下 Ctrl + F5(Windows/Linux)或 Cmd + Shift + R(macOS),浏览器会发出不含缓存校验头、却带 Cache-Control: no-cache 和 Pragma: no-cache 的请求。
服务器无视本地缓存,一律返回完整资源,状态码全部是 200 OK。
所有JS、CSS、图片都会重新下载,页面彻底重建——这也是为什么它比F5慢3秒左右。
当你在CDN环境下更新了首页banner图,或调试时发现控制台报错指向旧JS行号,就必须用这个组合键。
什么时候该用哪个?三步判断法
第一步:打开浏览器开发者工具 → 切换到 Network 面板 → 勾选 “Disable cache”(仅用于临时验证,非实际操作)。
第二步:先按一次 F5,观察各资源的 Size 列——若大量显示 from disk cache 或 from memory cache,说明缓存正在干扰你。
第三步:立即按 Ctrl+F5,再看同一资源是否变成具体字节数(如 12.4 KiB)且 Status 全为 200 —— 是,则问题锁定为缓存未更新;不是,则需排查网络、服务端或代码逻辑。











