Live Server 页面空白或404的主因是工作区未以文件夹打开或入口文件非index.html;静态资源404因路径以HTML所在目录为基准;CSS/JS修改不自动刷新因默认仅监听HTML类文件;端口冲突可手动修改设置;HTTPS需换用其他工具。

Live Server插件启动后页面空白或404
常见现象是点击“Go Live”后浏览器打开 http://127.0.0.1:5500/,但显示空白页、找不到文件,或者控制台报 net::ERR_ABORTED。根本原因通常是当前工作区根目录没选对,或者入口 HTML 文件名不是 index.html。
- 确保 VSCode 的文件资源管理器里,你右键点击的文件(或当前打开的标签页)属于一个已打开的**文件夹工作区**,而不是单个文件 —— Live Server 只在文件夹根目录下起服务
- 如果主页面叫
home.html或app.html,它不会自动加载;必须手动在地址栏改成http://127.0.0.1:5500/home.html - 检查文件路径是否含中文或空格:某些旧版 Live Server 对非 ASCII 路径支持不稳定,建议用英文命名
- 插件默认端口是 5500,若被占用会自动跳到 5501,但浏览器可能还停留在旧地址,刷新前先看 VSCode 右下角状态栏提示的实际 URL
静态资源(CSS/JS)不生效或 404
页面结构出来了,但样式没加载、脚本报错,控制台显示 GET http://127.0.0.1:5500/style.css net::ERR_ABORTED 404 —— 这不是代码写错了,而是路径解析逻辑和开发服务器行为不一致导致的。
- Live Server 启动的是一个真实 HTTP 服务,所有相对路径都以**当前 HTML 文件所在目录为基准**,不是以 VSCode 工作区根目录为准
- 比如
src/index.html引用../css/main.css,那浏览器请求的就是http://127.0.0.1:5500/css/main.css,必须确保该路径在磁盘上真实存在 - 避免使用
file://协议直接双击打开 HTML:这时浏览器禁用跨域读取本地 CSS/JS,而 Live Server 是http://协议,绕过限制 - 如果用了
<base href="/>,Live Server 会按这个 base 去解析所有相对路径,容易引发意外 404,调试时建议先移除
修改代码后页面没自动刷新
保存 HTML/CSS/JS 后浏览器没反应,需要手动 F5 —— Live Server 默认只监听 .html、.htm、.xhtml、.php 等后缀,对 .css 和 .js 的改动默认**不触发刷新**(只热重载部分框架才支持)。
- VSCode 设置里搜
liveServer.settings.AdvanceCustomBrowserCmdLine不要乱填,那是给 Chrome 调试用的,和刷新无关 - 真正起作用的是
liveServer.settings.donotVerifyTags和liveServer.settings.refreshOnEdit,但后者仅影响 HTML 类型文件 - 想让 CSS/JS 修改也刷新,最稳的办法是:在 VSCode 设置中搜索
liveServer.settings.CustomBrowserUrl,留空;然后启用liveServer.settings.AdvanceCustomBrowserCmdLine并设为--auto-open-devtools-for-tabs,再配合浏览器插件如 “Refresh Page on Save” - 更轻量的替代方案:改完 CSS/JS 后按快捷键
Ctrl+Shift+P→ 输入Live Server: Reload手动触发一次
端口冲突、HTTPS 或多项目并行问题
启动时报错 Error: listen EADDRINUSE: address already in use :::5500,或你想同时预览两个不同项目,又或者需要测试 HTTPS 行为(比如调用 navigator.geolocation)。
- 端口被占?别急着关其他程序 —— 在 VSCode 设置里搜
liveServer.settings.port,改成比如8080或3000,重启 Live Server 即可 - 两个项目不能共用一个 Live Server 实例:每个文件夹工作区独立启动自己的服务,端口会自动错开(5500 → 5501),前提是它们是两个不同的 VSCode 窗口或不同文件夹
- Live Server **原生不支持 HTTPS**,哪怕配置了证书也不会生效;真要测 HTTPS 特性,得换用
serve(npx serve -s)或http-server(npx http-server -S) - 注意防火墙或公司代理:有些企业网络会拦截 localhost 非标准端口,表现为页面打不开但无报错,换到 8080/3000 这类常用端口试试


















