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

Laravel 11 Reverb生产环境WebSocket连接失败求助

Laravel 11 Reverb生产环境WebSocket连接失败(wss://subdomain.domain.com连接失败)

本地环境正常,但生产环境无法建立WebSocket连接,报错:WebSocket connection to wss://subdomain.domain.com/app/... failed

生产环境.env配置:

REVERB_APP_ID=401132
REVERB_APP_KEY=vcgwoutdwqj3qek4ixsv
REVERB_APP_SECRET=o1jvqubryshtorosmgbz
REVERB_HOST="subdomain.domain.com"
REVERB_PORT=443
REVERB_SCHEME=https

REVERB_SERVER_HOST="server-ip"
REVERB_SERVER_PORT=8080

VITE_REVERB_APP_KEY="${REVERB_APP_KEY}"
VITE_REVERB_HOST="${REVERB_HOST}"
VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"

Reverb debug日志显示服务器启动在server-ip:8080 (subdomain.doamin.com),且正常执行连接清理和心跳检测操作。已执行npm run build,调整过REVERB_PORT和REVERB_HOST参数,问题仍未解决。

排查与解决方案

1. 移除.env变量的多余引号

你的.env中REVERB_HOST、REVERB_SERVER_HOST等变量带了双引号,会导致实际读取的参数包含引号,直接引发连接错误。修改后应为:

REVERB_HOST=subdomain.domain.com
REVERB_SERVER_HOST=server-ip

VITE_REVERB_HOST="${REVERB_HOST}"
VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"

修改后重启Reverb服务和应用服务器,重新执行npm run build。

2. 配置反向代理(以Nginx为例)

生产环境使用HTTPS时,需要通过Nginx将wss请求转发到Reverb的8080端口,确保配置包含以下规则:

location /app/ {
    proxy_pass http://127.0.0.1:8080;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
}

配置完成后重启Nginx,确保无配置错误。

3. 检查防火墙/安全组规则

  • 确保服务器8080端口允许本机(127.0.0.1)访问(用于反向代理转发)
  • 若Reverb与应用服务器分开部署,需确保应用服务器能访问Reverb服务器的8080端口
  • 检查云服务商安全组规则,放行相关端口

4. 验证SSL证书有效性

确认subdomain.domain.com的SSL证书有效且受信任,避免浏览器因证书问题阻断WebSocket连接。可直接访问https://subdomain.domain.com查看证书状态。

5. 确认Reverb服务运行状态

执行以下命令检查Reverb状态:

php artisan reverb:status

若服务未正常启动,查看详细日志定位问题:

php artisan reverb:start --debug

重点关注绑定地址失败、权限不足等错误信息。

6. 验证前端连接参数

在浏览器开发者工具的Network面板,查看WebSocket请求的地址和参数,确认host为subdomain.domain.com、port为443、scheme为https,确保编译后的前端参数正确。

内容的提问来源于stack exchange,提问作者Muntasir Hasan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 18:57:11