博主:Q葩小玉
个人座右铭:你想过普通的生活 就会遇到普通的挫折 你想过上最好的生活 就一定会遇上最强的伤害 这世界很公平 你想要最好 就一定会给你最痛~
看上面图,就知道这是一个很强大的功能应用。
官方这样介绍:
http-server
是一个简单的零配置命令行http服务器。它足够强大,足以用于生产用途,但它既简单又易于破解,可用于测试,本地开发和学习。
http-server 简介
http-server 是一个简单的零配置的命令行 http服务器,它足够强大便于生产和使用,用于本地测试和开发。
有时候我们打开一个文档使用file协议打开的时候,不能发送ajax请求,只能使用http协议才能请求资源,
具体的区别大家可以去参考这篇文档 https://www.cnblogs.com/lishanlei/p/9327646.html,所以此时我们需要在本地建立一个http服务,通过IP加端口号,来访问资源。
我一般的做法就是通过vscode的插件或者通过webstorm来打开,现在可以通过http-server来便捷的创建一个本地服务。
首先需要安装nodejs
http-server 链接
npmjs地址
https://www.npmjs.com/package/http-server
github
https://github.com/indexzero/http-server
全局安装
npm i http-server -g
全局安装便于使用
你也可以使用npx
来运行,而不需要安装它,命令是:
npx http-server [path] [options]
即只在当前目录热运行,下次启动或在其它目录不能再运行,命令就是npx http-server
快速使用
http-server
输入上面命令,如果端口被占用了,它会修改端口,默认是 8080
简写
hs
修改端口
http-server <path> -a 127.0.0.1 -p 8090
http-server [path] [options]
其他参数
参数 |
作用 |
-p 或者 —port |
端口设置,默认是 8080 |
-a |
监听地址设置默认是 0.0.0.0 |
-d |
是否显示文件列表 默认true |
-i |
显示自动索引 默认true |
-g |
或者 —gzip 默认false,当文件的gzip版本存在且请求接受gzip编码时,它将服务于./public/some-file.js.gz,而不是./public/some-file.js |
-e |
或者 —ext 如果没有提供默认文件扩展名(默认为html) |
-s |
或者 —silent 禁止控制台日志信息输出 |
–cors |
允许跨域资源共享 |
-o |
启动服务后打开默认浏览器 |
-c |
设置缓存cache-control max-age heade存留时间(以秒为单位),示例:-c10是10秒,默认是3600秒,如果要禁用缓存就使用-c-1 |
-U 或者 —utc |
使用 UTC格式,在控制台输出时间信息 |
-P 或者 —proxy |
通过一个 url地址,代理不能通过本地解析的资源 |
-S 或者 —ssl |
使用https协议 |
-C 或者 —cert |
ssl证书文件的路径,默认是cert.pem |
-K 或者 —key |
ssl密匙文件路径 |
-h 或者 —help |
显示帮助 |
-v 或者 —version |
显示版本并退出 |
默认文件
index.html 目录默认文件
404.html 默认的404文件
重定向
http-server --proxy http://localhost:8080?
ssl部署
http-server -S -C cert.pem
npm官方主页:https://www.npmjs.com/package/http-server