HTTPSを設定興亜ローカル環境

OpenSSLの

まず、自己署名証明書を生成するために使用されるローカルのopensslをインストールする必要があります。

$醸造は、OpenSSLをインストール

インストールを確認します。

$ opensslのバージョン
LibreSSL 2.6.5

証明書の生成

証明書を生成するには、次のコマンドを実行します。

openssl reqを-nodes -new -x509 -keyout server.keyの-out server.cert 
2048ビットのRSA秘密鍵を生成します

実行はいくつかの情報、住所、団体などを入力するように求められます後、直接スキップされた入力することができます。しかし、入力はCommon Name、我々はその入力を確認する必要がありますlocalhost

$ののopenssl reqを-nodes -new -x509 -keyout server.keyの-out server.cert 
2048ビットのRSA秘密鍵を生成
............ +++ 
......... 。+++ 
に新しい秘密鍵の書き込み server.keyのを 
----- 
あなたが組み込まれることになる情報を入力するように要求されようとしている
証明書要求にを。
あなたが入ろうとしていることは、識別名またはDNと呼ばれるものです。
そこかなりの数のフィールドがありますが、あなたには、いくつかの空白のままにしておくことができ
、デフォルトの値になりますが、いくつかのフィールドで
、あなたが入力した場合""、フィールドは空白のままになります。
----- 
国名(2文字コード)[]: 
都道府県名(フルネーム)[]:
地域名(例えば、都市)[]:
組織名(例えば、会社)[]:
組織単位名(例えば、セクション)[]:
共通名(例えば、完全修飾ホスト名)[]:ローカルホスト

2つのファイルが実行されます:

  • server.cert 自己署名証明書ファイル
  • server.key 証明書の秘密鍵

サーバ・コード

server.js

const http = require("http");
const https = require("https");
const fs = require("fs");
const Koa = require("koa");
const app = new Koa();

app.use(async ctx => {
  ctx.body = "hello https";
});

http.createServer(app.callback()).listen(3000);
const options = {
  key: fs.readFileSync("./server.key", "utf8"),
  cert: fs.readFileSync("./server.cert", "utf8")
};
https.createServer(options, app.callback()).listen(443);

然后访问 localhost

本地访问 https 的效果

本地访问 https 的效果

因为是本地自签名证书的原因,并没有三方机构的认证,所以浏览器会有红色的警告。

相关资源

おすすめ

転載: www.cnblogs.com/Wayou/p/koa_local_https.html