使用http-server搭建静态文件服务器

简介: 本文介绍几种搭建静态文件服务器的方式,着重介绍基于node的http-server用法。

几种搭建静态文件服务器的方式

静态文件服务器常用来部署前端项目、本地开发前端项目、甚至来解决file协议的跨域问题,本文初步介绍几种搭建静态文件服务区的几种方式,并详细讲解一下http-server的用法。

1. Microsoft IIS

Microsoft IIS:即Internet Information Server(IIS),是允许在公共Intranet或Internet上发布信息的WEB服务器。如:WIMP(windows+Mysql/MariaDB+Perl/PHP/Python)网站环境


image.png

2. Apache

Apache:源于NCSA httpd服务器,经过多次修改,成为世界上最流行的WEB服务器软件之一,常见WEB配置环境如:WAMP、LAMP等


image.png

3. Tomcat

Tomcat Server服务器环境:是根据servlet和JSP规范进行执行的比绝大多数商业应用软件服务器要好,目前许多WEB服务器都是采用Tomcat Server环境


image.png

4. Nginx

Nginx:Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,也是现在比较主流的搭建web服务器方式


image.png

5. NodeJs-httpServer

NodeJs-httpServer:httpServer是一个命令行HTTP服务器工具,用于提供本地文件,类似于python -mSimpleHTTPServe


image.png

http-server介绍

http-server是一个简单的零配置命令行http服务器。它对于生产使用来说是足够强大的,但是它很简单,可以用于测试、本地开发和学习。如果你的项目很简单、低流量,甚至可以直接用它来部署你的前端应用。http-server启动原理与node框架express、koa2相同,都是使用了node的http模块的createServer功能,所以学习http-server也是学习node、node服务器原理的第一步。
git地址
node http模块

安装

通过npm全局安装

npm install http-server -g

注意:如果运行报错,请直接安装0.9.0版本 npm install -g http-server@0.9.0

这将全局安装http服务器,以便可以从命令行运行

用法

http-server [path] [options]

[path]默认为./public,如果文件夹不存在,则为./

可以访问http://localhost:8080来查看服务器

注意:默认情况下,缓存处于打开状态。添加-c-1作为禁用缓存的选项。

参数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 显示帮助

注意:index.html 作为任何目录请求的默认文件

云顶云(yundingyun.com)是国内首批专注于云计算与大数据服务的提供商,致力于“让云计算更简单”。做为阿里云五星授权服务中心,云顶云致力于为企业和政府提供方案咨询、架构设计、部署实施、系统定制、运维托管、技术培训等全方位“4S”级公有云、私有云定制化服务。

相关文章
|
Python
使用Python实现multipart/form-data文件接收的http服务器
至此,使用Python实现一个可以接收 'multipart/form-data' 文件的HTTP服务器的步骤就讲解完毕了。希望通过我的讲解,你可以更好地理解其中的逻辑,另外,你也可以尝试在实际项目中运用这方面的知识。
599 69
|
11月前
|
C# 图形学 开发者
Unity开发中使用UnityWebRequest从HTTP服务器下载资源。
总之,UnityWebRequest就是游戏开发者手中的万能钓鱼竿,既可以获取文本数据,也能钓上图片资源,甚至是那声音的涟漪。使用UnityWebRequest的时候,你需要精心准备,比如确定URL、配置请求类型和头信息;发起请求;巧妙处理钓获的数据;还需要机智面对网络波澜,处理各种可能出现的错误。按照这样的过程,数据的钓取将会是一次既轻松愉快也效率高效的编程钓鱼之旅。
612 18
|
11月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
499 14
|
10月前
|
JSON 前端开发 Go
Go语言实战:创建一个简单的 HTTP 服务器
本篇是《Go语言101实战》系列之一,讲解如何使用Go构建基础HTTP服务器。涵盖Go语言并发优势、HTTP服务搭建、路由处理、日志记录及测试方法,助你掌握高性能Web服务开发核心技能。
|
10月前
|
Go
如何在Go语言的HTTP请求中设置使用代理服务器
当使用特定的代理时,在某些情况下可能需要认证信息,认证信息可以在代理URL中提供,格式通常是:
655 0
|
JSON API 数据安全/隐私保护
使用curl命令在服务器上执行HTTP请求
总的来说,curl是一个非常强大的工具,它可以让你在命令行中发送各种类型的HTTP请求。通过学习和实践,你可以掌握这个工具,使你的工作更加高效。
1202 30
|
存储 数据库 Python
使用HTTP POST协议将本地压缩数据发送到服务器
总的来说,使用HTTP POST协议将本地压缩数据发送到服务器是一个涉及多个步骤的过程,包括创建压缩文件,设置HTTP客户端,发送POST请求,以及服务器端的处理。虽然这个过程可能看起来复杂,但一旦你理解了每个步骤,就会变得相对简单。
409 19
|
12月前
|
存储 安全 数据安全/隐私保护
HFS-快速创建HTTP服务器
鉴于HFS的操作简便和方便快捷,它在满足快速,临时的文件分享和传输需求上,能够发挥出巨大的作用。只要明确了以上的安全警告,并做好了必需的安全设置,HFS将是一款实用的HTTP服务器工具。
1426 9
|
安全 网络安全 定位技术
网络通讯技术:HTTP POST协议用于发送本地压缩数据到服务器的方案。
总的来说,无论你是一名网络开发者,还是普通的IT工作人员,理解并掌握POST方法的运用是非常有价值的。它就像一艘快速,稳定,安全的大船,始终为我们在网络海洋中的冒险提供了可靠的支持。
356 22
|
缓存 负载均衡 安全
HTTP代理服务器对速度提升有何作用?
在信息化时代,网络成为生活不可或缺的一部分。HTTP代理服务器位于客户端与服务器之间,通过数据压缩、缓存机制和路由优化等方式,有效提高数据传输速度并保护个人信息安全。使用91HTTP等工具,用户可在业务需求中获得更快更安全的网络体验。
368 4