мой чат-сервер работал нормально на http, но теперь я использую letsencrypt, и клиент возвращает ERROR 404 в консоли Chrome при попытке получить socket.io.js
В следующих примерах кода я заменил свой реальный доменwith mydomain.de
Сервер работает без ошибок:
var app = require('express')();
var fs = require('fs');
var https = require('https');
var io = require('socket.io')(https);
var mysql = require('mysql');
var options = {
key: fs.readFileSync('/etc/letsencrypt/live/mydomain.de/privkey.pem'),
cert: fs.readFileSync('/etc/letsencrypt/live/mydomain.de/cert.pem'),
ca: fs.readFileSync('/etc/letsencrypt/live/mydomain.de/chain.pem')
};
var serverPort = 8888;
var server = https.createServer(options, app);
io.on('connection', function(socket){
console.log('a user connected');
socket.on('join room', function (data) {
socket.join(data.room);
console.log('user' + socket.id + ' joined ' + data.room);
});
socket.on('chat message', function(data){
socket.broadcast.to(data.room).emit('chat message', {is_sender: 0, msg: data.msg});
socket.emit('chat message', {is_sender: 1, msg: data.msg});
});
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
server.listen(serverPort, function(){
console.log('listening on *:' + serverPort);
});
Код на стороне клиента выглядит следующим образом:
<script src="https://mydomain.de:8888/socket.io/socket.io.js"></script>
<script>
var socket = io('https://mydomain.de:8888');
</script>
Похоже, клиент не может подключиться, так какСервер не регистрирует никаких соединений вообще.Что мне здесь не хватает?Пытаюсь разобраться с часами и прочитать много примеров или похожих проблем, но не могу найти ошибку, которую я сделал.