Rocky Linux生产服务器上Laravel Reverb的wss://协议无法正常工作
Laravel Reverb wss连接失败排查与解决
可能成因
- 证书配置错误:证书路径无效、证书与域名不匹配、证书文件权限不足
- 端口/防火墙限制:Rocky Linux本地防火墙或云安全组未放行443端口
- Reverb服务未正常运行:未启动Reverb进程,或进程意外退出
- 反向代理配置缺失:未通过Nginx/Apache正确转发WebSocket请求
- 配置文件不一致:
.env与config/reverb.php中的参数不匹配
排查步骤
检查Reverb服务状态
执行命令查看进程是否存在:ps aux | grep reverb或者直接尝试重启服务:
php artisan reverb:stop && php artisan reverb:start若要后台运行,可配合
nohup或进程管理器(如Supervisor):nohup php artisan reverb:start > /dev/null 2>&1 &验证端口与防火墙
检查443端口是否被监听:netstat -tulpn | grep 443检查Rocky Linux的firewalld是否放行443:
firewall-cmd --list-all | grep 443若未放行,添加规则并重启防火墙:
firewall-cmd --add-port=443/tcp --permanent firewall-cmd --reload同时确认云服务器的安全组规则已允许443端口的TCP流量。
检查证书配置
- 确保
config/reverb.php中的local_cert和local_pk使用绝对路径,比如/etc/nginx/ssl/cert.pem,而非相对路径 - 验证证书与域名是否匹配:执行命令查看证书绑定域名:
确认结果包含你的openssl x509 -in /path/to/cert.pem -text -noout | grep DNSREVERB_HOST域名 - 检查证书文件权限,确保Reverb进程(通常是www-data或nginx用户)能读取:
chmod 644 /path/to/cert.pem /path/to/private.key chown www-data:www-data /path/to/cert.pem /path/to/private.key
- 确保
核对配置文件一致性
检查config/reverb.php是否正确读取.env参数,确保host、port、scheme字段指向对应变量,同时tls配置块正确嵌套在options内:'options' => [ 'tls' => [ 'local_cert' => env('REVERB_TLS_CERT', '/path/to/default/cert.pem'), 'local_pk' => env('REVERB_TLS_KEY', '/path/to/default/private.key'), ], ],建议在
.env中新增证书路径的变量,避免硬编码配置文件。检查反向代理配置(若使用Nginx/Apache)
若Reverb未直接监听443(比如默认监听8080),需通过Nginx转发wss请求,配置示例:server { listen 443 ssl; server_name your-domain.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/private.key; location /reverb { 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; } }此时
.env中需调整为:REVERB_HOST=127.0.0.1 REVERB_PORT=8080 REVERB_SCHEME=http客户端连接地址为
wss://your-domain.com/reverb
额外验证
客户端连接失败时,可查看Reverb日志(默认存储在storage/logs/reverb.log)或服务器的系统日志(/var/log/messages或/var/log/syslog),获取更具体的错误信息,比如证书验证失败、端口占用等。
内容的提问来源于stack exchange,提问作者user25525788
相关产品推荐
相关产品推荐

