简介
wamoyo-http-server 是一个基于 Node.js 的轻量级静态文件 Web 服务器。它可以让你通过命令行启动一个本地服务器,方便地进行前端开发、调试以及演示,同时具有快速启动、自动刷新、支持多种 MIME 类型等特点。该 npm 包已经被广泛应用并得到了用户的好评。
安装
在安装之前,需要确保你的电脑上已经安装了 Node.js,可以通过以下命令检查一下:
$ node -v v12.14.1
如果你还没有安装 Node.js,你需要预先进行 Node.js 的安装。(这里不再赘述)
- 打开终端并执行以下代码:
$ npm install wamoyo-http-server -g
- 安装完成后,你可以在终端中输入以下命令启动 wamoyo-http-server:
$ wamoyo-http-server
然后你应该会看到下面的输出:
Starting up http-server, serving ./ Available on: http://127.0.0.1:8080 http://192.168.0.100:8080 Hit CTRL-C to stop the server
然后,你的本地服务器就已经启动了。
使用方法
wamoyo-http-server 的运行命令是 wamoyo-http-server,而且这个命令可以接受很多不同的参数,让你可以通过不同的配置启动不同的服务器。下面我们会细说。
基本使用
假设在当前目录下有一个名为 index.html 的文件,我们可以通过以下命令启动 wamoyo-http-server:
$ wamoyo-http-server
这里并没有指定任何参数,所以 Web 服务器会使用默认参数,即监听 8080 端口、当前目录下的所有文件可访问、404 时默认返回 index.html 等等。
访问 http://127.0.0.1:8080/,应该会看到 index.html 的内容
其他命令行参数
除了默认参数,还有一些参数可以跟 wamoyo-http-server 命令一起使用,从而更好地满足你的需求,以下是比较常用的一些参数:
指定端口
默认情况下,wamoyo-http-server 监听的是 8080 端口。如果你想要更改监听的端口,可以使用 -p 或者 --port 参数,例如:
$ wamoyo-http-server -p 3000
这将会把服务监听端口修改为 3000 ,并且你必须打开 http://127.0.0.1:3000/ 才能看到你的 Web 服务器。
指定监听的 IP
默认情况下,wamoyo-http-server 只会监听 127.0.0.1 (localhost)这个 IP 地址,也就是说只能在本地使用。如果你想要让服务器在多台设备上都能被访问到,可以使用 -a 或者 --address 参数,例如:
$ wamoyo-http-server -a 192.168.0.101
这将会把服务器绑定到本地 IP 地址 192.168.0.101 上,这样其他设备就可以通过该 IP 地址 + 端口号的方式访问该服务器,如:http://192.168.0.101:3000/。
指定静态文件目录
默认情况下,wamoyo-http-server 会在运行时自动监视运行命令的目录,并将该目录作为 Web 服务器的公开目录。如果你想更改文件目录的路径,可以使用 -d 或者 --root 参数,例如:
$ wamoyo-http-server -d /path/to/dir
这将会把服务提供的目录修改为 /path/to/dir,并且你不再需要在服务 URL 中指定路径,因为文件的相对路径是相对于服务目录而不是运行目录。
指定默认的文件
默认情况下,当用户访问不存在的文件时,wamoyo-http-server 会返回 404 错误,并且不会回退到默认的 index.html 文件。如果你想回退到默认的文件路径,可以使用 -i 或者 --index 参数,例如:
$ wamoyo-http-server -i /path/to/index.html
这会在访问一个不存在的页面时,重定向到提供的 /path/to/index.html 路径。
使用 SSL
如果你需要支持使用 SSL 加密协议的 https 安全连接,你可以使用 -S 或者 --ssl 参数,例如:
$ wamoyo-http-server -S
这将开启 HTTPS 的支持,并使用默认设置。如果你想要自定义 HTTPS 配置,可以使用以下参数:
- --cert:证书文件的路径
- --key:密钥文件的路径
- --pfx:PFX 文件的路径
- --passphrase:如果证书被加密,那么需要输入密码
通过配置文件使用
除了在运行时通过命令行参数配置,wamoyo-http-server 还支持加载配置文件,配置文件支持 JSON 或者 YML 格式,只要指定其路径即可,例如:
$ wamoyo-http-server -c /path/to/server-config.yaml
开发与调试
在使用 wamoyo-http-server 时,我们可以通过调整不同的参数,让其更好地服务于我们的开发与调试。下面是一些比较常用的技巧:
打开自动刷新
在开发和调试时,我们常常需要频繁地修改代码,然后在浏览器中按下 F5 刷新页面来查看效果。这个过程是很繁琐且低效的。为了方便开发调试,wamoyo-http-server 提供了一个 -o 或者 --open 参数,该参数会自动打开默认浏览器,并且在文件发生变化时实时自动刷新。例如:
$ wamoyo-http-server -o
设置 MIME 类型
在 Web 开发中,浏览器通常会根据不同的 MIME 类型来解析文件类型。默认情况下,wamoyo-http-server 支持大多数的 MIME 类型,然而,如果你需要添加特定的 MIME 类型,可以使用 MIME 配置文件,例如:
在当前目录下创建一个名为 mime.json 的文件,文件内容如下:
{ "html": [ "text/html; charset=utf-8" ], "js": [ "application/javascript" ], "css": [ "text/css" ] }
然后在启动 wamoyo-http-server 时通过 -m 或者 --mime 参数告诉 wamoyo-http-server 要使用的 MIME 类型文件:
$ wamoyo-http-server -m mime.json
这将会把 MIME 配置文件作为 wamoyo-http-server 的配置一部分,并正确地设置各种文件类型的 MIME 类型。
总结
到这里,你应该对 wamoyo-http-server 有了一定的了解。它的使用非常简单且方便,同时又支持很多高级的功能。相信在实际开发中,它会是一个非常有用的工具。
希望这篇文章能够对你有所帮助。记得关注我们的博客,获取更多的前端技术资讯和文章。祝你编码愉快!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055bb381e8991b448d94dd