http-server 工具
约 738 字大约 2 分钟
2025-04-18
http-server
是一个基于 Node.js 的零配置命令行 HTTP 服务器,适用于快速启动本地静态文件服务。它特别适合前端开发、测试静态网站或原型演示。以下是详细使用说明:
一、安装
1、全局安装(推荐)
npm install -g http-server
安装后可在任何目录通过 http-server
命令启动服务。
2、局部安装(仅当前项目)
npm install http-server --save-dev
使用时需通过 npx http-server
或配置 npm scripts 调用。
二、基本用法
1、启动默认服务
http-server
- 默认监听
0.0.0.0:8080
,自动扫描当前目录下的index.html
。 - 访问地址:
http://localhost:8080
、http://[你的IP]:8080
。
2、指定目录和端口
http-server ./public -p 3000
./public
: 指定静态文件目录。-p 3000
: 指定端口号为 3000。
三、常用参数
参数 | 说明 |
---|---|
-p 、--port | 指定端口(默认 8080) |
-a 、--address | 绑定 IP 地址(默认 0.0.0.0 ,允许局域网访问) |
-d 、--directory | 显示目录列表(默认开启,若目录中存在 index.html 则优先显示该文件) |
-i 、--icons | 显示文件类型图标(需目录列表启用) |
-o | 启动后自动在浏览器打开 |
-c 、--cache | 设置缓存时间(秒),-c -1 禁用缓存 |
--cors | 启用跨域资源共享(CORS) |
-S 、--ssl | 启用 HTTPS(需提供证书) |
-P 、--proxy | 代理未找到的请求到指定 URL |
-U 、--utc | 日志时间使用 UTC 格式 |
-v 、--version | 查看版本号 |
四、高级用法
1、启用 HTTPS
生成自签名证书:
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
启动 HTTPS 服务:
http-server -S -C cert.pem -K key.pem
2、禁用缓存
开发时避免浏览器缓存静态文件:
http-server --cache=-1
3、跨域支持(CORS)
解决前端跨域请求问题:
http-server --cors
4、绑定特定 IP
允许局域网设备访问:
http-server -a 0.0.0.0
5、自定义日志级别
控制输出信息:
http-server --log-ip # 记录客户端 IP
http-server --log-ssl # 记录 SSL 信息
五、配置文件
通过 http-server.config.json
保存常用配置:
{
"port": 3000,
"cors": true,
"cache": -1,
"ssl": true,
"proxy": "http://api.example.com"
}
启动时自动读取配置:
http-server --config http-server.config.json
六、实际示例
1. 启动服务并自动打开浏览器
http-server -o
2. 指定目录、端口和 HTTPS
http-server ./dist -p 443 -S -C cert.pem -K key.pem
3. 结合 npm scripts
在 package.json
中添加:
{
"scripts": {
"start": "http-server ./public -p 3000 --cors"
}
}
运行:
npm run start
七、注意事项
- 生产环境不适用:
http-server
为轻量级工具,生产环境建议使用 Nginx/Apache。 - 端口冲突:若端口被占用,可通过
-p
更换端口或终止占用进程。 - 安全提示:启用
0.0.0.0
允许局域网访问时,确保目录无敏感文件。
通过上述配置,你可以快速搭建本地开发服务器,高效调试静态资源!
更新日志
2025/8/24 08:17
查看所有更新日志
e7112
-1于