這是我的問題。
我有一個虛擬機,在Windows上,上面安裝了Apache伺服器(2.4)。
虛擬機器位於網路上,以便其他人可以直接存取它http://192.168.100.22(實際上)
首先,http 協議一切順利。
我已設定與該伺服器的 HTTPS 連線。 (實際上是本機網路上的自簽名憑證)
我安裝了一個nodeJs伺服器並監聽這台機器上的9001連接埠。這只是為了管理 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 協定?我嘗試將其更改為 wss:// 而不是 ws,嘗試在節點伺服器中使用 require('https') 而不是 http,但還沒有任何效果...
我遇到的最後一個錯誤是:
Cross-origin request blocked
感謝您的幫助/閱讀