http-server 常用命令
http-server 是一个简单的零配置命令行 HTTP 服务器,用于本地快速启动一个静态文件服务器。
安装
bash
# 全局安装
npm install -g http-server
# 或使用 npx(无需安装)
npx http-server常用命令
启动服务器
bash
# 在当前目录启动
http-server
# 指定目录
http-server ./dist
# 指定端口
http-server -p 3000
# 指定主机(局域网可访问)
http-server -a 0.0.0.0
# 同时指定端口和主机
http-server -a 0.0.0.0 -p 3000常用参数
bash
# 自动打开浏览器
http-server -o
# 禁用缓存(开发时有用)
http-server -c-1
# 启用 HTTPS
http-server -S -C cert.pem -K key.pem
# 显示目录列表
http-server -l
# 指定默认文件
http-server -i index.html参数说明:
| 参数 | 说明 | 什么时候用 |
|---|---|---|
-o | 自动打开浏览器 | 开发时省去手动打开浏览器的步骤 |
-c-1 | 禁用浏览器缓存 | 确保每次刷新都能看到最新的文件内容,避免改了代码但浏览器还在用旧缓存的问题 |
-S | 启用 HTTPS | Service Worker、摄像头/麦克风等 Web API 要求 HTTPS 环境才能运行。本地开发时用自签名证书启用 HTTPS,可以提前测试这些功能 |
-l | 显示目录列表 | 快速共享某个目录下的文件给同事,开启目录列表后可以在浏览器中浏览和下载文件 |
-i | 指定默认文件 | 访问目录时默认打开的文件,通常是 index.html |
组合使用
bash
# 开发常用:无缓存 + 自动打开浏览器 + 指定端口
http-server ./dist -c-1 -o -p 8080
# 局域网共享:允许外部访问
http-server -a 0.0.0.0 -p 8080使用场景
预览构建产物
bash
# 构建后快速预览
npm run build
http-server ./dist -p 4173本地分享文件
bash
# 在某个目录启动服务器,局域网内其他设备可访问
cd ~/Documents/shared
http-server -a 0.0.0.0 -p 8080测试 Service Worker
Service Worker 需要 HTTPS 或 localhost,http-server 默认满足条件。
常见问题
端口被占用
bash
# 查看占用端口的进程(Windows)
netstat -ano | findstr :8080
# 查看占用端口的进程(macOS/Linux)
lsof -i :8080
# 使用其他端口
http-server -p 3000跨域问题
bash
# 设置 CORS 头
http-server --cors