170 похожих чатов

Всем доброго времени. Не могу справиться с websocket-ами, а точнее

с их настройкой c ssl. Мой бэк на laravel 5.5, поэтому вебсокеты тогда шаминились с редисом и нодой, современные библиотеки не подходят, нормальные поддерживают от 5.7.
На локалке работаю вебсокеты как часы, не проблема, но как заливаю на боевой сервак, где подключен ssl, все отваливаеться. Фронт кстати находиться на другом серваке, т.е. еще существует проблема крос-доменных запросов, хотя на уровне приложений все настроено, и я читал что вебсокеты не должны из-за этого блокироваться. Мучаюсь второй день перепробовал многое что, и переводил на wss протокол передачи, но все пока бесполезно, может кто сталкивался с такой проблемой, или сможет подсказать что мне делать. Может Nginx нужно до настроить?

Ответы в Мозиле если настроен по wss протоколу

Firefox не может установить соединение с сервером wss://api.example.com:6001/socket.io/?EIO=3&transport=websocket.
Во время загрузки страницы соединение с wss://api.example.com:6001/socket.io/?EIO=3&transport=websocket было прервано.

Ответ если настроен по обычному https

Запрос из постороннего источника заблокирован: Политика одного источника запрещает чтение удаленного ресурса на https://api.example.com:6001/socket.io/?EIO=3&transport=polling&t=NBIKGUc. (Причина: не удалось выполнить запрос CORS).

Скрипт в самой Ларке

var app = require("express")();
var fs = require("fs");

var options = {
key: fs.readFileSync(__dirname + "/sslcert/privkey.pem", "utf8"),
cert: fs.readFileSync(__dirname + "/sslcert/fullchain.pem", "utf8"),
};

var https = require("https").Server(options, app);
var io = require("socket.io")(https);
var Redis = require("ioredis");
var redis = new Redis();

require("dotenv").config();

redis.subscribe("message", function (err, count) {});
redis.on("message", function (channel, message) {
console.log("Message Recieved: " + message);
message = JSON.parse(message);
io.emit(`${channel}.company.${message.data.company.id}`, message);
});

https.listen(process.env.SOCKET_PORT, function () {
console.log("Listening on Port " + process.env.SOCKET_PORT);
});

1 ответов

6 просмотров

Посмотри в сторону proxy_pass

Похожие вопросы

Обсуждают сегодня

Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
55
Привет, нужен совет старших товарищей. Есть глобальная переменная var DefaultDataFolder:string; инициализируем DefaultDataFolder:='a:\_OUT\'; есть примитивная процедур...
Max Otto
14
Вопрос. Теоретический. Есть список команд. Команды отправляю в обработку некой функции, по очереди. Разные команды могут давать разные результаты после обработки. В зависимос...
Serjone
7
Всем вечера. Подскажите как лучше сделать. делаю на Д10 Например будет база данных на SQLite. в ней будет много таблиц. более 50шт Типа справочник. Содержать ID Name Id p...
Андрей Т 🐎
10
Я короче решил скомпилировать Nim в js, я думал он сработает как обычный транслятор. По итогу он мне создал файл с расширением js, и туда поместил кучу кода Вопрос, что это з...
𝕾𝖍𝖆𝖉𝖊 <suspense>
9
Всем здравствуйте!) У меня такой вопрос. Есть два роута, роут1 и роут2. Они связаны с очередью some_queue. По задаче предполагается, что есть два паблиша. Паблиш1 отправляет...
Format
10
это группа токсиков или тех кто помогает?
Ибрагим
9
подскажите пожалуйста, как мне освободить результат записанный в переменную result? в чем проблема подскажите если МОЖЕТЕ?
Михаил Helper
28
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
мы пытаемся подменить функцию, которая имеет меньше инструкций относительно функции, которой подменяем. https://www.reddit.com/r/jailbreakdevelopers/comments/w06ujy/mshookfun...
Óðinn
6
Карта сайта