当前位置: 首页 > 面试题库 >

使用节点js创建HTTPS服务器

柯天宇
2023-03-14
问题内容

我想为我的本地主机创建一个https服务器。
Node JS文档提供了开箱即用的解决方案,但我对此有些困惑。

var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
  cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(8000);

要么

var options = {
  pfx: fs.readFileSync('server.pfx')
};

在这里,我如何获取本地主机的密钥,证书或pfx?


问题答案:

出于开发目的,您可以创建自认证证书。这是在基于Linux的系统上执行此操作的方法:

首先,生成一个私钥

openssl genrsa 1024 > key.pem

这会将1024位RSA密钥存储在文件key.pem中。

然后,使用该密钥生成一个SSL证书:

openssl req -x509 -new -key key.pem > key-cert.pem

现在,您可以在传递给createServer的选项中使用key.pem和key-cert.pem。



 类似资料:
  • 我在同一个文件夹(tut67)中创建了这个javascript文件,index.html,about.html,contact.html,services.html,但它仍然给出了每个html文件的错误。(我使用MacBook Air)。 代码如下::: 常量about=fs.readfileSync('./about.html'); const contact=fs.readfileSync('

  • 问: Workerman如何创建一个https服务,使得客户端可以用过https协来连接通讯。 答: https协议实际是http+SSL,就是在http协议上加入SSL层。Workerman支持http协议,同时也支持SSL(需要Workerman版本>=3.3.7), 所以只需要在http协议的基础上开启SSL即可支持https协议。 Workerman开启SSL 准备工作: 1、Worker

  • 我正在尝试使用节点设置HTTPS服务器。js和Express。js。 我目前正在尝试: 但是,我得到了这个错误: 我做错了什么?

  • 问: Workerman如何创建一个https服务,使得客户端可以用过https协来连接通讯。 答: https协议实际是http+SSL,就是在http协议上加入SSL层。Workerman支持http协议,同时也支持SSL(需要Workerman版本>=3.3.7), 所以只需要在http协议的基础上开启SSL即可支持https协议。 Workerman开启SSL 准备工作: 1、Worker

  • 我正在用nodejs和MongoDB创建我的第一个API,我想创建一个类似“localhost:3050/user/name”的GET请求。所以我建立了这个: ...

  • 我正在尝试在后端节点中发出http请求。js web app。我可以在前端web javascript文件上发出成功的完整http请求,如下所示: 并遵循本指南:https://nodejs.dev/learn/make-an-http-post-request-using-nodejs 我一直试图在node中发出相同的请求。js后端: 但运行上述请求会导致以下错误: 我设置url/path设置的