欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

使用 Node.js 快速启动本地静态服务:http-server 和 live-server - I. http-server 简介和用法

最编程 2024-07-15 07:52:53
...

http-server是一个简单的零配置命令行HTTP服务器,它强大而易用。http-server是由Node.js编写的,因此,在此之前你需要在你的计算机上安装Node.js。

  1. 安装

在命令行中输入以下命令来全局安装http-server:

npm install -g http-server
  1. 使用

安装完成后,你可以在命令行中输入http-server来启动服务器。默认情况下,http-server将在你当前的目录中提供HTTP服务。

如果你想在特定的端口上运行服务器,你可以使用-p选项,如下所示:

http-server -p 8080

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

现在,你可以通过访问 http://localhost:8080 查看您的服务器

注意:默认会开启缓存,通过添加 -c -1 选项可禁用缓存。

http-server [path] [options]

而使用 npx 可以在不安装脚本的情况下运行脚本:

npx http-server [path] [options]

值得注意的是:

  • index.html将作为任何目录请求的默认文件。
  • 如果找不到文件,将令404.html服务,这可用于单页应用程序 (SPA) 托管以服务入口页面。

SSL

首先,需要确保openssl已正确安装,并且拥有key.pemcert.pem文件。之后可以使用以下命令生成它们:

openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem

简单来说,就是当你要创建一个证书时,会有一些问题需要回答。如你想让这个证书在电脑或浏览器中被认可,就需要把通用名称设置为127.0.0.1。就好像你要进入一个游乐园,需要出示一张入场券一样,这个证书就是你进入电脑或浏览器的入场券,它们将在3650天内有效(大约10年)。

然后你需要使用-S参数来启动服务器,以启用SSL并使用-C参数指定证书文件。

http-server -S -C cert.pem

如果你想在私钥中使用密码短语,可以在openssl命令中通过-passout参数指定密码(使用密码为foobar)。

例如:openssl req -newkey rsa:2048 -passout pass:foobar -keyout key.pem -x509 -days 365 -out cert.pem

出于安全原因,密码短语将仅从NODE_HTTP_SERVER_SSL_PASSPHRASE环境变量中读取。

如果成功,应该会输出以下内容:

Starting up http-server, serving ./ through https

http-server settings:
CORS: disabled
Cache: 3600 seconds
Connection Timeout: 120 seconds
Directory Listings: visible
AutoIndex: visible
Serve GZIP Files: false
Serve Brotli Files: false
Default File Extension: none

Available on:
  https://127.0.0.1:8080
  https://192.168.1.101:8080
  https://192.168.1.104:8080
Hit CTRL-C to stop the server