Laravel Echo Server和https版本上的net :: ERR_SSL_PROTOCOL_ERROR

问题描述

我在laravel echo服务器,socket.io和redis的nginx服务器上使用laravel 5.8。

我的网站一直工作到昨天没有错误,但是今天它一直在给我套接字错误,例如:

GET https://example.com:6001/socket.io/?EIO=3&transport=polling&t=NHtNFvZ net::ERR_SSL_PROTOCOL_ERROR

这是我的laravel-echo-server.json文件:

{
    "authHost": "http://localhost:8000","authEndpoint": "/broadcasting/auth","clients": [
        {
            "appId": "123","key": "123"
        }
    ],"database": "redis","databaseConfig": {
        "redis": {
            "port": "6379","host": "127.0.0.1"
        },"sqlite": {
            "databasePath": "/database/laravel-echo-server.sqlite"
        }
    },"devMode": true,"host": null,"port": "6001","protocol": "http","socketio": {},"sslCertPath": "","sslKeyPath": "","sslCertChainPath": "","sslPassphrase": "","apiOriginAllow": {
        "allowCors": true,"allowOrigin": "http://localhost:80","allowMethods": "GET,POST","allowHeaders": "Origin,Content-Type,X-Auth-Token,X-Requested-With,Accept,Authorization,X-CSRF-TOKEN,X-Socket-Id"
    }
}

首先遇到ERR_CRT_DATE_INVALID错误,后来遇到ERR_SSL_PROTOCOL_ERROR

我已经使用sudo supervisorctl restart echo-server:*重新启动了echo worker,但是仍然存在相同的问题。

解决方法

终于我解决了这个问题。

我添加了:

"authHost": "https://localhost:8000",

"protocol": "https",

"sslCertPath": "/etc/letsencrypt/live/example.com/fullchain.pem",

"sslKeyPath": "/etc/letsencrypt/live/example.com/privkey.pem",

在我的laravel-echo-server.json文件中,并使用sudo supervisorctl restart echo-server:*重新启动回显服务器工作进程

将来可能会对某人有所帮助。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...