当前位置:首页 > 云服务器

Laravel WebSocket 本地连接 Puher 失败的解决方案

游戏科技网2026年09月14日 21:51云服务器10
描述:本地开发时 laravel websockets 报“failed to connect to pusher”错误,实为广播配置误用 pusher 官方服务而非本地 websocket 服务器所致;只需禁用 tls 并指向本地 `127.0.0.1:6001`,即可让事件广播正确路由至自托管 web…

Laravel WebSocket 本地连接 Puher 失败的解决方案

本地开发时 laravel websockets 报“failed to connect to pusher”错误,实为广播配置误用 pusher 官方服务而非本地 websocket 服务器所致;只需禁用 tls 并指向本地 `127.0.0.1:6001`,即可让事件广播正确路由至自托管 websocket 服务。

该错误的根本原因在于:你正在使用 beyondcode/laravel-websockets 搭建本地 WebSocket 服务器,但 broadcasting.php 中的 pusher 配置仍默认尝试连接 Pusher 官方云服务(尤其是启用了 TLS 或未显式覆盖 host/port 时)。虽然配置中已设置 host => 127.0.0.1 和 port => 6001,但 pusher-php-server SDK 在 useTLS => true(默认行为)下会强制使用 https:// 协议和 443 端口,导致与本地 HTTP 服务(http://127.0.0.1:6001)协议不匹配,最终触发连接超时并报错 Failed to connect to Pusher.。

值得注意的是,即使连接失败,Laravel 的广播机制仍会继续执行后续逻辑(如触发事件回调),因此你观察到“错误后事件仍被发出”——这并非事件成功广播,而是广播驱动降级失败后,框架未中断流程所致,实际客户端并未收到消息。

✅ 正确配置方式如下(以 config/broadcasting.php 为准):

Laravel WebSocket 本地连接 Puher 失败的解决方案
baidu-map-jsapi-three

使用 MapV-Three 构建专业的 3D 地图和 GIS 应用 - 基于 Z-up 坐标系的 3D 地图库,支持地图编辑、测量工具、要素绘制、数据管理等地理可视化功能。适用于创建地图编辑器、测量工具、空间数据可视化等 Web-GIS 应用。

下载

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

connections => [

    pusher => [

        driver => pusher,

        key => env(PUSHER_APP_KEY),

        secret => env(PUSHER_APP_SECRET),

        app_id => env(PUSHER_APP_ID),

        options => [

            cluster => env(PUSHER_APP_CLUSTER),

            useTLS => false, // ? 关键:禁用 TLS,匹配本地 HTTP 服务

            host => 127.0.0.1,

            port => 6001,

            scheme => http,

            encrypted => false, // 兼容旧版 SDK,建议显式声明

        ],

    ],

],

⚠️ 注意事项:

  • 删除或注释掉 timeout => 1:过短的超时(如 1 秒)易因本地网络延迟导致误判失败;
  • 确保 laravel-websockets 服务正在运行:php artisan websockets:serve,且监听 0.0.0.0:6001(非仅 127.0.0.1,避免 Docker 或跨网络访问问题);
  • .env 中 PUSHER_APP_CLUSTER 值(如 mt1)仅作标识用途,本地服务不依赖真实 Pusher 集群,可保留也可设为任意字符串(如 local),但需与前端 JS 初始化时的 cluster 保持一致;
  • 若使用 Laravel Echo 前端,确保初始化时也关闭 TLS:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    window.Echo = new Echo({

        broadcaster: pusher,

        key: import.meta.env.VITE_PUSHER_APP_KEY,

        cluster: import.meta.env.VITE_PUSHER_APP_CLUSTER,

        wsHost: window.location.hostname,

        wsPort: 6001,

        forceTLS: false, // ? 同样关键

        disableStats: true,

    });

总结:这不是 Pusher 凭据或网络连通性问题,而是协议与服务目标错配。将广播驱动明确指向本地 HTTP WebSocket 服务,并关闭 TLS,即可彻底解决该错误,确保事件真正触达客户端。

“Laravel WebSocket 本地连接 Puher 失败的解决方案” 的相关文章

5元云服务器:入门级新手首选

5元云服务器:入门级新手首选 我是一名刚毕业的大学生,对编程充满了热情,但现实总是骨感一些。刚踏入职场,我梦想着能独立开发一个网站或应用,却苦于没有足够的资源。买一台实体服务器太贵,租个虚拟空间又觉得…

6元服务器租用,高性价比VPS主机推荐

6元服务器租用,高性价比VPS主机推荐 记得去年我刚开始创业,做了一个小型网站来展示我的产品。那时,我手头紧,预算有限,却急着需要一个可靠的服务器来托管网站。作为一个普通上班族,我对技术懂得不多,但我…

2021年云服务器优惠套餐推荐

2021年云服务器优惠套餐推荐 嗨,朋友们!你是否曾经在深夜里,面对一堆代码和服务器错误,感叹说:“为什么我的项目老是卡顿?”如果是这样的话,那你可能正在寻找2021年云服务器优惠套餐的解决方案。作为…

云服务器市场增长

云服务器市场增长 大家好,作为一个每天依赖云服务器的开发者,我亲身感受到市场的飞速膨胀。想象一下,几年前我还得在办公室的老旧电脑前苦苦挣扎,处理数据时总是卡顿不堪,但现在,只需轻轻一点,就能在云端获得…

1元买走一台云服务器,这种天上掉馅饼的事存在吗?

1元买走一台云服务器,这种天上掉馅饼的事存在吗? 那天,我在咖啡馆里刷手机,偶然看到一个广告:“只需1元,就能买走一台高性能云服务器!容量无限,稳定快速,适合创业和学习。”我的心跳突然加速了。作为一个…

云服务器10元月:经济型服务价格新记录

云服务器10元/月:经济型服务价格新记录 最近,云服务器的价格被推向了一个新低,10元一个月的方案让许多人惊喜不已。这不仅仅是数字上的变化,更是科技服务普惠化的一个标志。云服务器作为一种基于云计算的虚…