必须确认文件扩展名是.index.html而非index.html.txt:windows默认隐藏扩展名,记事本保存时需选“所有文件”并手动输入index.html,否则实际为index.html.txt;同时检查大小写、bom编码及服务器路径是否匹配。

确认文件扩展名是否为 .html 而非 .html.txt
Windows 默认隐藏已知文件扩展名,你双击保存的 index.html 实际可能是 index.html.txt。浏览器请求 /index.html,但服务器只找到 index.html.txt,自然返回 404。
- 在文件资源管理器中打开「查看」选项卡 → 勾选「文件扩展名」,直接看真实后缀
- 右键文件 → 「属性」→ 检查「名称」字段是否含多余后缀(如
about.html.txt) - 用记事本另存为时,务必在「另存为类型」下拉菜单中选「所有文件」,再手动输入
index.html,否则默认保存为.txt
验证服务器是否区分大小写
Linux/Unix 服务器(包括大多数线上环境)对文件名大小写敏感;About.html 和 about.html 是两个不同文件。本地 Windows 测试正常,一上线就 404,大概率是这个原因。
- 通过 FTP 或 SSH 登录服务器,执行
ls -l查看实际文件名(注意大小写) - 检查 HTML 中的链接:比如
<a href="Contact.html"></a>,而服务器上只有contact.html,就会 404 - 统一使用小写命名(
index.html、products.html),避免跨平台问题
用浏览器 Network 面板确认真实请求路径
你以为点的是 /home,其实浏览器发出去的是 /home/ 或 /Home —— 这些细微差异都会触发 404。别靠肉眼猜,要看 Network 面板里「Name」列的真实请求地址。
- 按 F12 打开开发者工具 → 切到 Network 标签 → 刷新页面或点击链接
- 找到状态码为
404的请求 → 点开 → 查看「Headers」里的「Request URL」 - 对比该 URL 与你预期的文件路径:是否多了斜杠?是否大小写不一致?是否漏了
.html?
检查编辑器是否意外添加 BOM 或编码异常
某些编辑器(如老版 Notepad)保存 UTF-8 时会插入 BOM(字节顺序标记),导致服务器无法识别文件为 HTML,或重定向出错,间接引发 404(尤其在 Nginx + PHP 环境下)。
- 用 VS Code 打开 HTML 文件 → 右下角查看编码格式,若显示「UTF-8 with BOM」,点击切换为「UTF-8」→ 重新保存
- 用命令行检查:
file -i index.html(Linux/macOS),输出应含charset=utf-8,不含bom - 如果服务器日志出现
invalid byte sequence或响应头含Content-Type: text/plain,BOM 是首要怀疑对象
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











