Laravel Эхо-сервер - PullRequest
       50

Laravel Эхо-сервер

0 голосов
/ 05 мая 2020

У меня есть приложение Nuxt в интерфейсе и Laravel для API. Я успешно запустил эхо-сервер Laravel на моем локальном компьютере через прокси Nginx. Когда я развернул его на проде, я не могу заставить его работать. У меня такая же конфигурация на моем локальном компьютере, кроме конечных точек. Я всегда получаю статус 3 в моем ws-соединении.

Я не знаю, что искать или как отлаживать сокет-соединение

nginx config:

location /socket.io/echo/ {
            proxy_pass             http://127.0.0.1:6001;
            proxy_set_header Host  $host;
            proxy_read_timeout     60;
            proxy_connect_timeout  60;
            proxy_redirect         off;

            # Allow the use of websockets
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
    }

enter image description here

Ответы [ 2 ]

0 голосов
/ 07 мая 2020

Это была глупая ошибка. На сервере, с которым я работал, размещается довольно много доменов. В API использовалось другое доменное имя, чем в приложении nuxt. Обновлен конфиг, чтобы он указывал на доменное имя API, и теперь он работает нормально. Спасибо!

0 голосов
/ 05 мая 2020

Возможно, вам потребуется настроить laravel echo для работы с SSL. Попробуйте настроить его так:

window.Echo = new Echo({
        broadcaster: 'pusher',
        key: process.env.MIX_PUSHER_APP_KEY,
        wsHost: window.location.hostname,
        wsPort: 6001,
        wssPort: 6001,
        encrypted: true,
        disableStats: true,
        enabledTransports: ['ws', 'wss']
    });

Если не работает, пожалуйста, подтвердите, какой пакет вы используете на стороне сервера? Это laravel -вебсокеты? Возможно, потребуется также настроить SSL.

...