Я использую ASP.NET CORE 2.0 для создания электронной коммерции.В электронной коммерции есть чат, созданный с использованием nodejs и пакета socket.io.Сервер socket.io является удаленным на сервере.Когда я использую клиент Socket.io локально, с запуском Visual Studio Debugger, для доступа к удаленному socket.io, все работает нормально.
Код такой, обратите внимание, что я неиспользуя https
var app2 = require('express')();
var http = require('http').Server(app);
var http2 = require('http').Server(app2);
var io = require('socket.io')(http);
http.listen(3009, function () {
console.log('listening on port 3009');
});
http2.listen(3011, function () {
console.log('listening on port 3011');
});
Но когда я публикую свой веб-сайт и получаю html-страницу вместе с клиентом socket.io, обслуживаемым Nginx / kestrel, я получаю сообщение об ошибке, говорящее, что я что-то смешал, я неОбратите внимание на сообщение об ошибке, потому что я вспомнил, что использовал http на своем сервере socket.io и клиентах.Поэтому я изменил сервер и клиенты socket.io, но теперь не могу подключиться.
Мои изменения таковы:
var app2 = require('express')();
var http = require('https').Server(app);
var http2 = require('https').Server(app2);
var io = require('socket.io')(http);
http.listen(3009, function () {
console.log('listening on port 3009');
});
http2.listen(3011, function () {
console.log('listening on port 3011');
});
клиентов
myIo = io('https://www.example.com.br:3009', { secure: true, reconnect: true, rejectUnauthorized: false });
Я использовал Давайтешифрование для включения соединений https, я использую Nginx в качестве прокси для Kestrel, я использую ufw на Ubuntu 17.