You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel Reverb WebSocket连接失败问题求助

Laravel Reverb WebSocket连接失败排查与解决

已完成Reverb安装并配置Nginx反向代理,但仍提示WebSocket连接失败,可按以下步骤排查解决:

1. 确认Reverb服务状态

  • 登录服务器,手动启动Reverb服务:php artisan reverb:start,观察是否有启动报错。
  • 检查8080端口是否被监听:执行ss -tulpn | grep 8080,确认Reverb进程在该端口正常运行。

2. 优化Nginx代理配置

当前配置缺少长连接超时设置,且proxy_pass地址建议调整,修改后的配置如下:

location /app {
    proxy_http_version 1.1;
    proxy_set_header Host $http_host;
    proxy_set_header Scheme $scheme;
    proxy_set_header SERVER_PORT $server_port;
    proxy_set_header REMOTE_ADDR $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "Upgrade";

    # 添加WebSocket长连接超时配置
    proxy_connect_timeout 7d;
    proxy_send_timeout 7d;
    proxy_read_timeout 7d;

    proxy_pass http://127.0.0.1:8080; # 替换为本地回环地址,比0.0.0.0更可靠
}
  • 验证Nginx配置语法:nginx -t,无报错后重启Nginx:systemctl restart nginx

3. 核对Reverb配置文件

  • 打开config/reverb.php,确认:
    • host设置为服务器公网IP或域名
    • port为8080
    • scheme:HTTPS环境设为wss,HTTP环境设为ws
  • 前端连接地址需与上述配置匹配,例如HTTPS环境下使用wss://你的域名/app

4. 检查服务器防火墙与安全组

  • 确保服务器防火墙放行8080端口(Reverb)及80/443端口(Nginx):
    ufw allow 8080/tcp
    ufw allow 80/tcp
    ufw allow 443/tcp
    ufw reload
    
  • 云服务器需在服务商控制台的安全组中添加对应端口的入站规则

5. 排查SSL与浏览器控制台错误

  • HTTPS环境下,确保Nginx配置了有效SSL证书,否则浏览器会拦截wss连接
  • 打开浏览器开发者工具(F12),查看Console和Network面板的具体错误信息,定位是否为跨域、证书或协议不匹配问题

内容的提问来源于stack exchange,提问作者Darshan Belani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 12:52:18