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来搞定。
  • 在平常开发过程中,常遇到没有用任何框架和工具,就是要运行一个简单的html页面,需要启一个本地的服务器。
  • 有的时候做前端,想要运行一些代码,但是又没有必要使用tomcat或者Apache http server,这个时候一个轻量级的简单的http server就可以搞定了。

    Http-server是基于nodejs的http服务器,它最大好处就是:可以使任意一个目录成为服务器的目录,完全抛开后台的沉重工程,直接运行想要的js代码。

http-server好处:
  • 可以使静态资源文件的任意一个目录成为服务器的目录,完全抛开后台的沉重工作,直接运行你想要的代码。
http-server安装及运行:
  1. 安装node.js
  2. 使用npm/cnpm安装http-server;运行 npm install http-server -g
  3. 开始使用:使用cd跳转到你想要查看的文件夹下面,例:cd dist;然后将文件夹放到本地服务器上。使用http-server 启动;然后会出现以下代码:
    1.  
      Starting up http-server, serving ./
    2.  
      Available on:
    3.  
      http://127.0.0.1:8081
    4.  
      http://10.1.1.232:8081
    5.  
      Hit CTRL-C to stop the server

    浏览器使用 http://127.0.0.1:8081 或 http://10.1.1.232:8081启动即可查看你想运行的代码;

  4. 当不使用时,直接使用 ctrl+c 结束即可;
http-server可用参数( Available Options ):
  • -p Port to use (defaults to 8080)
  • -a Address to use (defaults to 0.0.0.0)
  • -d Show directory listings (defaults to 'True')
  • -i Display autoIndex (defaults to 'True')
  • -g or --gzip When enabled (defaults to 'False') it will serve ./public/some-file.js.gz in place of ./public/some-file.js when a gzipped version of the file exists and the request accepts gzip encoding.
  • -e or --ext Default file extension if none supplied (defaults to 'html')
  • -s or --silent Suppress log messages from output
  • --cors Enable CORS via the Access-Control-Allow-Origin header
  • -o Open browser window after starting the server
  • -c Set cache time (in seconds) for cache-control max-age header, e.g. -c10 for 10 seconds (defaults to '3600'). To disable caching, use -c-1.
  • -U or --utc Use UTC time format in log messages.
  • -P or --proxy Proxies all requests which can't be resolved locally to the given url. e.g.: -P http://someurl.com
  • -S or --ssl Enable https
  • -C or --cert Path to ssl cert file (default: cert.pem).
  • -K or --key Path to ssl key file (default: key.pem).
  • -r or --robots Provide a /robots.txt (whose content defaults to 'User-agent: *\nDisallow: /')
  • -h or --help Print this list and exit.

可选配置:

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

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

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

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

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

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

-s--silent从输出中抑制日志消息

--cors通过Access-Control-Allow-Origin标题启用CORS

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

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

-U--utc在日志消息中使用UTC时间格式。

-P--proxy代理无法在本地解决给定网址的所有请求。例如:-P http://someurl.com

-S--ssl启用https。

-C--certssl证书文件的路径(默认值:cert.pem)。

-K--keyssl密钥文件的路径(默认值:key.pem)。

-r或者--robots提供一个/robots.txt(其内容默认为'User-agent:* \ nDisallow:/')

-h--help打印此列表并退出。

http-server 基于nodejs的http服务器的更多相关文章

  1. 基于nodejs的游戏服务器

    开源一个四年前自己写的node服务器,有兴趣的可以继续开发-- 架构为mysql,redis,node. 数据格式为 protocol buff 如果只做简单的演示,这个架构非常适合你.. 还是typ ...

  2. [Intel Edison开发板] 04、Edison开发基于nodejs和redis的服务器搭建

    一.前言 intel-iot-examples-datastore 是Intel提供用于所有Edison开发板联网存储DEMO所需要的服务器工程.该工程是基于nodejs和redis写成的一个简单的工 ...

  3. 基于 nodejs 的 webSockt (socket.io)

    基于 nodejs 的 webSockt (socket.io) 理解 本文的业务基础是在基于 nodejs 的 socket.io 的直播间聊天室(IM)应用来的. 项目中具体的 框架如下 expr ...

  4. nodejs搭建web服务器初级

    nodejs搭建简单的web服务器 1.1简介 Node.js是基于Chrome JavaScript运行时建立的一个平台,实际上它是对Google Chrome V8引擎进行了封装,它主要用于创建快 ...

  5. Nodejs创建HTTPS服务器

    Nodejs创建HTTPS服务器 从零开始nodejs系列文章,将介绍如何利Javascript做为服务端脚本,通过Nodejs框架web开发.Nodejs框架是基于V8的引擎,是目前速度最快的Jav ...

  6. nodejs创建http服务器

    之前有简单介绍nodejs的一篇文章(http://www.cnblogs.com/fangsmile/p/6226044.html) HTTP服务器 Node内建有一个模块,利用它可以很容易创建基本 ...

  7. 基于Netty打造RPC服务器设计经验谈

    自从在园子里,发表了两篇如何基于Netty构建RPC服务器的文章:谈谈如何使用Netty开发实现高性能的RPC服务器.Netty实现高性能RPC服务器优化篇之消息序列化 之后,收到了很多同行.园友们热 ...

  8. 转-基于NodeJS的14款Web框架

    基于NodeJS的14款Web框架 2014-10-16 23:28 作者: NodeJSNet 来源: 本站 浏览: 1,399 次阅读 我要评论暂无评论 字号: 大 中 小 摘要: 在几年的时间里 ...

  9. 浏览器自动刷新——基于Nodejs的Gulp LiveReload与VisualStudio完美结合。

    本文版权桂博客园和作者吴双共同所有,转载和爬虫请注明原文地址 http://www.cnblogs.com/tdws/p/6016055.html 写在前面 大家好我是博客园的蜗牛,博客园的蜗牛就是我 ...

随机推荐

  1. zw版【转发·台湾nvp系列Delphi例程】HALCON ConvolImage

    zw版[转发·台湾nvp系列Delphi例程]HALCON ConvolImage procedure TForm1.Button1Click(Sender: TObject);begin img.D ...

  2. jquery 实现两级导航菜单

    主要用于运维系统, 对界面要求不高的场合.  深深感到自己页面设计能力弱爆了,只能借鉴一下了, 交互逻辑还可以胜任一点. 直接贴代码: 1.  HTML 页面及 JS 交互, 注意引入 Jquery ...

  3. python 练习用python六剑客实现一个统计数字的个数,六剑客:(map、lambda、reduce、filter、切片、推到列表)

    统计一共有几个数字 s="sdfa45ads46723" #lambda >>> filter(lambda x:x.isdigit(),list(s)) ['4 ...

  4. java,url长链接生成短链接,短链接生成器,自定义字符串,对字符串md5混合KEY加密,根据短链接获得key值,不重复的随机数,不重复的随机字符串

    java,url长链接生成短链接,短链接生成器,自定义字符串,对字符串md5混合KEY加密,根据短链接获得key值,不重复的随机数,不重复的随机字符串 package com.zdz.test; im ...

  5. ES6学习笔记之map、set与数组、对象的对比

    ES6 ES5中的数据结构,主要是用Array和Object.在ES6中主要新增了Set和Map数据结构.到目前为止,常用的数据结构有四种Array.Object.Set.Map.下面话不多说了,来一 ...

  6. CPU负载过高异常排查实践与总结

    昨天下午突然收到运维邮件报警,显示数据平台服务器cpu利用率达到了98.94%,而且最近一段时间一直持续在70%以上,看起来像是硬件资源到瓶颈需要扩容了,但仔细思考就会发现咱们的业务系统并不是一个高并 ...

  7. UVA12995 Farey Sequence

    UVA12995 Farey Sequence 欧拉函数 同仪仗队那题几乎相同,本质都是求欧拉函数的和 #include<cstdio> #define N 1000000 ],i,j,t ...

  8. Vue 动态图片加载路径问题和解决方法

    最近在做一个树形结构的组件,使用了Vue和element UI中el-tree组件.因为树中每个节点都需要显示一个图标图片,并且需要根据后台传入的数据类型动态地显示,所以图片的路径需要动态地加载.下面 ...

  9. [JavaScript] - 7kyu

    Johnny is a boy who likes to open and close lockers. He loves it so much that one day, when school w ...

  10. 《算法竞赛入门经典》习题及反思 -<2>

    数组 Master-Mind Hints,Uva 340 题目:给定答案序列和用户猜的序列,统计有多少数字对应正确(A),有多少数字在两个序列都出现过但位置不对. 输入包括多组数据.每组输入第一行为序 ...