http-server:零配置命令行HTTP服务器使用指南
http-server是一个简单、零配置的命令行静态HTTP服务器。它功能强大足以用于生产环境,同时又足够简单和可定制,可用于测试、本地开发和学习。
快速开始
使用npx直接运行
无需安装即可直接运行http-server:
npx http-server [path] [options]
全局安装使用
通过npm全局安装http-server:
npm install --global http-server
安装完成后,可以在任何目录通过命令行运行http-server。
基本用法
启动http-server的基本命令格式:
http-server [path] [options]
其中[path]参数指定要服务的目录路径。如果./public文件夹存在,则默认使用该目录;否则使用当前目录./。
启动后,访问http://localhost:8080即可查看服务器内容。
配置选项详解
http-server提供了丰富的配置选项来满足不同使用场景:
基本配置
-p或--port:指定服务器端口号,使用-p 0会从8080开始寻找可用端口-a:设置服务器监听的IP地址--base-dir:设置服务文件的基础路径
目录与索引
-d:显示目录列表-i:显示自动索引-dir-overrides-404:设置目录显示是否覆盖404.html文件
压缩支持
-g或--gzip:启用gzip压缩文件服务-b或--brotli:启用brotli压缩文件服务
缓存控制
-c:设置缓存时间(秒),使用-c-1禁用缓存-s或--silent:抑制日志消息输出
高级功能
--cors:启用CORS支持-H或--header:添加额外的响应头-o [path]:启动后自动打开浏览器窗口
代理配置
-P或--proxy:将无法本地解析的请求代理到指定URL--proxy-all:将所有请求转发到代理目标
安全功能
-S、--tls或--ssl:启用TLS/SSL安全服务-C或--cert:SSL证书文件路径-K或--key:SSL密钥文件路径
魔法文件功能
http-server支持特殊的"魔法文件"功能:
index.html:作为目录请求的默认文件404.html:文件未找到时显示,适用于单页应用(SPA)托管
TLS/SSL配置
要启用HTTPS服务,首先需要生成SSL证书:
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
生成过程中会提示输入一些信息,在"Common name"字段中输入127.0.0.1以便在操作系统或浏览器中安装证书。
然后使用以下命令启动SSL服务器:
http-server -S -C cert.pem
开发与贡献
要参与http-server的开发,首先克隆项目:
git clone https://gitcode.com/gh_mirrors/ht/http-server
然后安装依赖并启动开发服务器:
npm install
npm start
启动后访问http://localhost:8080即可查看服务器。你可以在public文件夹中看到演示内容,包括乌龟图像等示例文件。
http-server的设计理念是简单易用,大多数情况下使用默认配置即可满足需求。对于需要更复杂配置的场景,可以通过环境变量或编写自定义启动脚本来实现更精细的控制。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考




