我正在重组我的服务器结构,将它们拆分开来,而不是从一台服务器运行所有内容。
我看了这里但这只是指定了我在原始设置中使用 1 台服务器所做的事情。
我有一个这样的结构:
- 2x Web 服务器
- 1x 负载均衡器
- 1x 缓存服务器
- 1x 工作服务器
- 1x 数据库服务器
除套接字连接外,一切运行良好。
我的负载均衡器已生成 SSL 证书
通常,我会这样指出他们:
var server = require('https').createServer({
key: fs.readFileSync('/etc/nginx/ssl/mywebsite.com/1652307/server.key'),
cert: fs.readFileSync('/etc/nginx/ssl/mywebsite.com/1652307/server.crt'),
}, app);
但是,在我的socket.js
文件中,我无法指向证书,因为它们现在位于负载均衡器上。
我一直在使用 laravel forge 建立基础设施。
我在控制台中收到的错误是:“WebSocket 在建立连接之前已关闭。
我正在使用 Nginx。
我该怎么办?
答案1
SSL 终止应在负载均衡器上,在这种情况下,您不应在后端启用 SSL。