Задать вопрос
@RMate

Почему firefox не может подключиться к сокету (laravel-echo-server)?

Всем привет! Делаю броадкастинг события через laravel-echo-server + https. Во всех браузерах все работает корректно, firefox пишет следующую ошибку:

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


На стороне клиента инициализирую подключение следующим образом:

window.Echo = new Echo({
    broadcaster: "socket.io",
    host: window.location.hostname + ":6001",
    transports: ["websocket", "polling", "flashsocket"],
    auth: {
        headers: {
            Authorization: "Bearer token"
        },
    },
})


Конфигурация laravel-echo-server:
{
	"authHost": "https://domain.ru",
	"authEndpoint": "/api/broadcasting/auth",
	"clients": [
	],
	"database": "redis",
	"databaseConfig": {
		"redis": {},
		"sqlite": {
			"databasePath": "/database/laravel-echo-server.sqlite"
		}
	},
	"devMode": true,
	"host": null,
	"port": "6001",
	"protocol": "https",
	"socketio": {},
	"sslCertPath": "путь_к_сертификату.crt",
	"sslKeyPath":  "путь_к_сертификату.key",
	"sslCertChainPath": "",
	"sslPassphrase": "",
	"subscribers": {
		"http": true,
		"redis": true
	},
	"apiOriginAllow": {
		"allowCors": true,
		"allowOrigin": "https://domain.ru",
		"allowMethods": "GET, POST",
		"allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-Id"
	}
}


Пробовал согласно документации из гитхаба настроить проксирование через nginx, ситуация аналогична. Хром, опера, сафари - подключаются, firefox нет.

Сертификат letsencrypt
Версия node 12.13.0
Версия laravel 6
Версия laravel-echo-server1.6.0, так же тестировал на 1.5.0

Подскажите, пожалуйста, в чем может быть причина?
  • Вопрос задан
  • 1048 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
@RMate Автор вопроса
Вопрос закрыт, проблема была в сертификате. Используйте чекеры sslshopper ssllabs.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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