我的 laravel reverb 在开发中运行良好,但无法在生产中运行。我总是在控制台中收到错误消息
websocket connection to 'my domain' failed
在我的.env中:
BROADCAST_DRIVER=reverb
REVERB_APP_ID=my-id
REVERB_APP_KEY=my-key
REVERB_APP_SECRET=my-secret
REVERB_HOST="my-servers-public-ip"
REVERB_PORT=8080
REVERB_SCHEME=http
在 bootstrap.js 中:
import Echo from 'laravel-echo';
import Pusher from 'pusher-js';
window.Pusher = Pusher;
window.Echo = new Echo({
broadcaster: 'reverb',
key: 'my-key',
wsHost: 'my-domain',
wssPort: '8080',
wsPort: '8080',
forceTLS: true,
enabledTransports: ['ws', 'wss'],
});
配置文件中的其他所有内容都是从全新混响安装加载的默认值。
我在 ubuntu 中使用 apache,并在 cloudflare 和 cloudflare ssl 后面代理 php8.3-fpm(所以我在服务器本身上没有任何 ssl 证书)。我已经确保我的 iptables 有端口 8080 的接受规则,如果我使用 telnet 与我的 IP 和端口 8080,我会获得成功的连接。我已在我的
ext-sockets
文件中启用了 php.ini
。
我尝试在启动命令中动态运行新端口:
php artisan reverb:start --port=8081
没有运气。当我运行 --debug
标志时,除了“修剪不活动连接”和“ping 陈旧连接”等消息或类似的消息之外,我在终端中什么也没有得到。没什么用处。
如果有人能帮助我,我会祝福你7代。
您找到问题了吗,或者解决套接字问题???