http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs.

如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个.

http-server所用场景:

    作为前端的同学来说,想要运行一段代码,但又没有必要使用tomcat或是Apache http server放在服务器上运行,这个时候,一个简单的轻量的http-server就能搞定。
    当前端开发完成后,需要我们打包部署,此时一般就会生成一个dist文件夹,里面存放的是一些静态文件,当我们在编辑器里直接运行这些静态文件时,很可能会出现“because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.”这类的关于MIME type的错误,这些错误是因为静态文件访问限制导致的,此时就可以使用http-server来搞定。

http-server好处:

    可以使静态资源文件的任意一个目录成为服务器的目录,完全抛开后台的沉重工作,直接运行你想要的代码。

http-server安装及运行:

    1.安装node.js
    2.使用npm/cnpm安装http-server;运行 npm install http-server -g
    3.开始使用:cd到启动的静态项目目录,例:cd dist;然后将文件夹放到本地服务器上。

    4.控制台运行:http-server/hs(使用http-server 启动)然后会出现以下代码:

或者修改启动:

http-server -a 0.0.0.0 -p 8000
Starting up http-server, serving ./
Available on:
  http://127.0.0.1:8081
  http://10.1.1.232:8081
Hit CTRL-C to stop the server
  • 浏览器使用 http://127.0.0.1:8081 或 http://10.1.1.232:8081启动即可查看你想运行的代码;这时候如果静态文件多的话会出现一个目录,然后再路径后面输入相应的文件名即可访问。

  5.当不使用时,直接使用 ctrl+c 结束即可;

 

http-server可用参数( Available Options ):

使可选配置:

-p 要使用的端口(默认为8080)

-a 要使用的地址(默认为0.0.0.0)

-d 显示目录列表(默认为“True”)   true / false

-i 显示autoIndex(默认为“True”)

-g或--gzip启用时(默认为“False”),它将用于./public/some-file.js.gz代替./public/some-file.jsgzip压缩版本的文件,并且该请求接受gzip编码。

-e或--ext默认文件扩展名(如果没有提供)(默认为'html')

-o 启动服务器后打开浏览器窗口

-c设置缓存控制max-age头的缓存时间(以秒为单位),例如-c10  10秒(默认为'3600')。要禁用缓存,请使用-c-1。

 

使用npm init/npm install初始的项目中使用http-server:

 然后再命令框中输入npm start

参考文献:https://www.cnblogs.com/lucker/p/4108838.html

 

打包生成dist文件后可进行下面操作创建本地服务:

// 本地搭建一个 HTTP 服务
"serve": "http-server -p 9090 dist/",

需要注意的是:将node_modules这些依赖包删除掉  重新npm install安装依赖

 

github地址:https://github.com/indexzero/http-server

 

 

 

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐