Apache サーバー上の Http から Https NodeJS Websocket へ

Apache サーバー上の Http から Https NodeJS Websocket へ

ここに私の問題があります。

Windows 上に仮想マシンがあり、そこに Apache サーバー (2.4) がインストールされています。

VMはネットワーク上にあるので、他の人が直接アクセスすることができます。http://192.168.100.22(実は)

まず、http プロトコルではすべてが順調に進んでいました。

このサーバーへの HTTPS 接続を設定しました。(実際にはローカル ネットワーク上にあるため、自己署名証明書です)

このマシンの 9001 ポートで NodeJs サーバーをインストールしてリッスンしています。これは、Websocket を管理することだけを目的としています。

実際の問題は、HTTPS では何も機能しなくなってしまったことです。

NodeServer は次のように構成されます:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
//...
http.listen(9001,function(){
    console.log('SERVER LISTENING');
});

クライアント側では、この種類の接続ですべて正常に動作します。

var socket = io('ws://192.168.100.22:9001');

すべてが https プロトコルで実行されるようになったため、この接続は失敗します。

ソケット接続を https プロトコルで動作させるには、何をする必要がありますか? 何を変更する必要がありますか? ws の代わりに wss:// に変更しようとしましたが、ノード サーバーで http の代わりに require('https') を試しましたが、まだ何も機能していません...

私が最後に遭遇したエラーは次のとおりです:

Cross-origin request blocked

ご協力・ご閲覧ありがとうございました

関連情報