手机HTML报404大概率是本地缓存问题,需清空“缓存的图片和文件”,优先用无痕模式验证,并排查hosts、运营商劫持及HTTPS混合内容拦截。

手机浏览器缓存导致 HTML 报 404 Not Found,大概率不是服务器真丢了文件,而是本地缓存了过期的重定向、错误路径或已失效的 Service Worker 脚本。清空缓存前先确认:你在访问 http://localhost 或内网地址?还是线上域名?前者更可能是缓存了旧的 404 响应,后者还可能混着 DNS 或 CDN 缓存问题。
Android Chrome / Edge / Firefox 清除缓存的具体路径
桌面端快捷键在手机上不生效,必须进设置逐层操作:
- 打开浏览器 → 点右上角「三个点」→「设置」→「隐私和安全」→「清除浏览数据」
- 时间范围选「所有时间」(别信「过去一小时」,很多缓存是几天前存的)
- 务必勾选「缓存的图片和文件」;如果页面涉及登录态或表单提交异常,再勾选「Cookie 及其他网站数据」
- 点击「清除数据」后,**不要立刻关掉设置页**——等进度条走完、提示“已完成”,再返回并重启浏览器
iOS Safari 清除缓存与网站数据的区别
清除历史记录与网站数据 是 Safari 的全局清理入口,但它会同时删掉所有 Cookie 和 localStorage,导致已登录的微信、银行类网页全部掉线。更稳妥的做法是精准清除:
生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur
- 进入 iOS「设置」→ 找到「Safari」→ 滑到底部点「清除历史记录与网站数据」→ 确认
- 但若只有一两个网站报 404,优先用「管理网站数据」:在 Safari 设置里找到该选项 → 搜索域名 → 左滑对应条目 → 点「删除」
- 注意:
管理网站数据不会清空缓存文件本身,它只删localStorage、IndexedDB和Service Worker注册信息——而后者恰恰是很多现代 PWA 应用返回陈旧 404 的元凶
强制刷新在手机上根本不存在,替代方案只有两个
手机浏览器没有 Ctrl+F5 或 Cmd+Shift+R,所谓“下拉刷新”只是重载当前页面,**完全不绕过缓存**。真正有效的替代动作是:
立即学习“前端免费学习笔记(深入)”;
- 在地址栏重新输入 URL 后,长按「前往」按钮(或回车键),部分 Android 浏览器会弹出「重新加载(无缓存)」选项
- 更可靠的是开「无痕标签页」:Chrome 点右下角「+」→ 选「新建无痕标签页」;Safari 点底部「aA」→「新建无痕标签页」。无痕模式默认禁用所有缓存和存储,能真实验证是否为缓存导致的 404
- 如果无痕页能正常加载,说明常规模式下的缓存或 Service Worker 已污染——此时必须清空,不能只靠“刷新”
缓存之外容易被忽略的三个干扰源
清完缓存仍报 404?别急着重装浏览器,先看这几个地方:
-
hosts文件被改过:某些国产安卓机(尤其预装“加速”“省电”App 的机型)会偷偷往系统/system/etc/hosts写入重定向规则,把你的测试域名指向 127.0.0.1 或无效 IP。需 root 后检查,或换机测试 - 运营商劫持:部分地区宽带 DNS 会把未备案域名解析到广告页,表现为“404”但实际是 200 返回了 HTML 广告。用手机流量重试,或安装
1.1.1.1App 切换 DNS - HTTPS 混合内容拦截:如果你用
http://访问本地 HTML,但页面里引用了https://的 JS,某些浏览器(如新版 Samsung Internet)会静默屏蔽资源并触发白屏或 404 样式错乱——打开开发者工具(需 USB 调试 + Chrome DevTools 远程调试)看 Network 面板里的真实状态码


















