在Railway部署带Laravel Reverb的应用时遇Pusher参数错误
解决Railway部署Laravel Reverb应用时的Pusher参数错误问题
错误信息
Pusher\Pusher::__construct(): Argument #1 ($auth_key) must be of type string, null given, called in /var/www/html/vendor/laravel/framework/src/Illuminate/Broadcasting/BroadcastManager.php on line 341
Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1
解决方案
指定广播驱动为Reverb
在.env文件中明确设置:BROADCAST_DRIVER=reverb同时检查
config/broadcasting.php,确保default配置项指向reverb,且reverb配置块的app_id、key、secret等参数与本地Reverb配置一致。清理配置缓存
部署时执行以下命令,避免旧配置缓存导致驱动误指向Pusher:php artisan config:clear php artisan cache:clear可将这两个命令加入Railway的部署脚本,确保每次部署都刷新配置。
配置Reverb环境变量
在Railway的环境变量面板中,添加以下Reverb相关变量(值与本地.env保持一致):REVERB_APP_IDREVERB_KEYREVERB_SECRETREVERB_HOST(部署时可设为0.0.0.0)REVERB_PORT(默认8080)REVERB_SCHEME(生产环境用https,开发用http)
同时移除或清空多余的PUSHER_*环境变量,避免配置混淆。
确认Reverb安装完成
确保已执行Reverb的安装和配置发布命令:composer require laravel/reverb php artisan reverb:install检查生成的
config/reverb.php文件,确认认证参数配置正确。
内容的提问来源于stack exchange,提问作者Oseahumen Agboifoh
相关产品推荐
相关产品推荐

