无法在AWS ELB中为侦听端口6001的WebSocket服务器设置运行状况检查

问题描述

我在Fargate上部署了Laravel后端。后端还通过推入API配置提供laravel-websockets。另一方面,我有一个在S3上运行的VUE应用程序,该应用程序侦听Web套接字。为了使其正常工作,我在Fargate(后端)上暴露了6001端口,以便前端可以收听。我面临的问题是在6001上没有运行状况检查手段,当我使用http协议调用websocket服务器时,它会响应404错误,并且我也尝试使用ws协议进行调用,但得到了相同的响应。有什么方法可以在ELB中设置一种机制,其中我们除了调用6001端口外还有另一个URL?或任何可以使它起作用的解决方案。任何帮助将不胜感激。

以下是配置:

Vue应用程序:

            this.pusher = new Pusher("xxxxx",{
                wsHost: "localhost",wsPort: 6001,wssPort: 6001,wsPath: "",disableStats: true,authEndpoint: "http://localhost:8000/laravel-websockets/auth",auth: {
                    headers: {
                        "X-App-ID": "xxxxx"
                    }
                },enabledTransports: ["ws","flash"],forceTLS: false
            });

            return this.pusher;
        
        }

Laravel应用程序:



    'connections' => [

        'pusher' => [
            'driver' => 'pusher','public' => env('PUSHER_APP_KEY'),'key' => env('PUSHER_APP_KEY'),'secret' => env('PUSHER_APP_SECRET'),'app_id' => env('PUSHER_APP_ID'),'options' => [
                'cluster' => 'wowo','useTLS' => false,'host' => '127.0.0.1','port' => 6001,'scheme' => 'http'
            ],],'redis' => [
            'driver' => 'redis','connection' => 'default','log' => [
            'driver' => 'log','null' => [
            'driver' => 'null',];

如果有不清楚的地方,请随时提出问题。谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)