使用redis驱动程序的laravel echo中的net :: ERR_CONNECTION_TIMED_OUT错误

时间:2017-04-28 12:38:14

标签: laravel redis socket.io laravel-5.3 laravel-echo

我使用带有redis驱动程序的laravel-echo来广播通知。它在我的本地系统上完美运行。但是在我的服务器上,我收到ERR_CONNECTION_TIMED_OUT错误。浏览器控制台显示http://ex.example.com:6001/socket.io/socket.io.js net::ERR_CONNECTION_TIMED_OUT

我对socket和redis一无所知。所以我只是遵循laravel official doclaravel-echo-server的指示。并从here进行了一次更改。但是在这种变化的帮助下,我能够让执行剩余的js脚本。 socket.io.js的问题仍未解决(同样在github)。

以下是我遵循的步骤。

  1. 关注Laravel Official Doc
  2. 安装Redis-Server
  3. 安装laravel-echo-server
  4. 在我的项目中安装socket.io-clent
  5. JS

    import Echo from "laravel-echo"
    window.io = require('socket.io-client');    //suggested in github issue
    window.Echo = new Echo({
        broadcaster: 'socket.io',
        host: window.location.hostname + ':6001'
    });
    

    laravel回波-server.json

    {
        "authHost": "http://ex.example.com",
        "authEndpoint": "/broadcasting/auth",
        "clients": [
                {
                        "appId": "edbf10287972d875",
                        "key": "96403c9f93e1a2d86185e2d21aa0fae1"
                }
        ],
        "database": "redis",
        "databaseConfig": {
                "redis": {},
                "sqlite": {
                        "databasePath": "/database/laravel-echo-server.sqlite"
                }
        },
        "devMode": true,
        "host": null,
        "port": "6001",
        "protocol": "http",
        "socketio": {},
        "sslCertPath": "",
        "sslKeyPath": ""
    }
    

    如果有人知道解决方案,我们将不胜感激。

1 个答案:

答案 0 :(得分:2)

这可能听起来很简单,但你检查了服务器上的防火墙设置吗?