-
Notifications
You must be signed in to change notification settings - Fork 110
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reverb 1.4.4 doesn't work in Local Development #287
Comments
I'm using Laravel Herd 1.11.1, Reverb 1.4.4 and Laravel 11.36. Everything works as expected on Windows without changing any configuration. |
After a brief look, you should be able to use the standard nginx config with the latest version after my PR. It might be related to the config using a hard coded SSL certificate location. I will make a fresh laravel install with herd and reverb, with your config to test. Will relay results or a fix. |
how did you get on @iaidan |
Hello everyone, I tried to use the standard nginx config and still doesn't work. Can you provide me your nginx config @iaidan please ? |
Hello @sertxudev ! Can you provide me your nginx config, the part of reverb in your .env, and your broadcast/reverb config files please ? I will compare with mines. Thanks |
Sure! My site's folder is named Before posting this I also uninstalled Herd from my computer, to check if it works with a fresh install. .env
broadcast/reverb.php<?php
declare(strict_types=1);
return [
/*
|--------------------------------------------------------------------------
| Default Reverb Server
|--------------------------------------------------------------------------
|
| This option controls the default server used by Reverb to handle
| incoming messages as well as broadcasting message to all your
| connected clients. At this time only "reverb" is supported.
|
*/
'default' => env('REVERB_SERVER', 'reverb'),
/*
|--------------------------------------------------------------------------
| Reverb Servers
|--------------------------------------------------------------------------
|
| Here you may define details for each of the supported Reverb servers.
| Each server has its own configuration options that are defined in
| the array below. You should ensure all the options are present.
|
*/
'servers' => [
'reverb' => [
'host' => env('REVERB_SERVER_HOST', '0.0.0.0'),
'port' => env('REVERB_SERVER_PORT', 8080),
'hostname' => env('REVERB_HOST'),
'options' => [
'tls' => [],
],
'max_request_size' => env('REVERB_MAX_REQUEST_SIZE', 10_000),
'scaling' => [
'enabled' => env('REVERB_SCALING_ENABLED', false),
'channel' => env('REVERB_SCALING_CHANNEL', 'reverb'),
'server' => [
'url' => env('REDIS_URL'),
'host' => env('REDIS_HOST', '127.0.0.1'),
'port' => env('REDIS_PORT', '6379'),
'username' => env('REDIS_USERNAME'),
'password' => env('REDIS_PASSWORD'),
'database' => env('REDIS_DB', '0'),
],
],
'pulse_ingest_interval' => env('REVERB_PULSE_INGEST_INTERVAL', 15),
'telescope_ingest_interval' => env('REVERB_TELESCOPE_INGEST_INTERVAL', 15),
],
],
/*
|--------------------------------------------------------------------------
| Reverb Applications
|--------------------------------------------------------------------------
|
| Here you may define how Reverb applications are managed. If you choose
| to use the "config" provider, you may define an array of apps which
| your server will support, including their connection credentials.
|
*/
'apps' => [
'provider' => 'config',
'apps' => [
[
'key' => env('REVERB_APP_KEY'),
'secret' => env('REVERB_APP_SECRET'),
'app_id' => env('REVERB_APP_ID'),
'options' => [
'host' => env('REVERB_HOST'),
'port' => env('REVERB_PORT', 443),
'scheme' => env('REVERB_SCHEME', 'https'),
'useTLS' => env('REVERB_SCHEME', 'https') === 'https',
],
'allowed_origins' => ['*'],
'ping_interval' => env('REVERB_APP_PING_INTERVAL', 60),
'max_message_size' => env('REVERB_APP_MAX_MESSAGE_SIZE', 10_000),
],
],
],
]; %userprofile%\.config\herd\config\nginx\nginx.conf
%userprofile%\.config\herd\config\valet\Nginx\cuelist.test.conf
FYI: To this project I also use Reverb as a Pusher server for an Electron project using src/main/echo.tsconst options = {
key: 'cuelist-ws',
cluster: '',
wsHost: 'cuelist.test',
wsPort: 8080,
wssPort: 8080,
forceTLS: true,
enabledTransports: ['ws', 'wss'] as Transport[],
auth: {
headers: {
Authorization: `Bearer ${bearerToken}`,
},
},
authEndpoint: 'https://cuelist.test/broadcasting/auth',
}
echo = new Echo({
...options,
broadcaster: 'reverb',
client: new Pusher(options.key, options),
}) |
Hi, After installing Herd, you do not need to make any configuration changes to nginx for it to work. My nginx.conf matches that of @sertxudev's, identical other than different user / local domain. |
Well ! Thank you for sharing your configuration @sertxudev All work fine now. I don't really now what happened. Maybe a fail configuration of my .env cause i just modify theses :
I was sure that i had tried this .env file... Maybe i forgot to clear my configuration, i don't know. Thank you all for the helps :) |
Reverb Version
1.4.4
Laravel Version
11.36.1
PHP Version
8.3
Description
I just try to update the Reverb version form 1.4.3 to 1.4.4 and i cann't make it work again. (I just revert to 1.4.3 to continue my work)
In production, the 1.4.4 version seems to work fine, so maybe my local installation is doomed.
For local development, I use Laravel Herd on Windows, and for some problems, I had to configure a nginx server inside Herd to make reverb working : wss-reverb-ssl.test.txt
Maybe my config is false, i got it from a git repo that has the same problem as me using Reverb on Laravel Herd Windows.
The error i get in my client :
echo.js:6 WebSocket connection to 'wss://wss-reverb-ssl.test/app/dvzli9g6ilve6ilpgg44?protocol=7&client=js&version=8.4.0-rc2&flash=false' failed:
All work very fine with Laravel Reverb 1.4.3
Tell me if you want more informations :)
Thanks
Steps To Reproduce
The text was updated successfully, but these errors were encountered: