通过纯 HTTPS 连接为 Juggernaut 2 提供服务
Posted
技术标签:
【中文标题】通过纯 HTTPS 连接为 Juggernaut 2 提供服务【英文标题】:Serving Juggernaut 2 over pure HTTPS connection 【发布时间】:2012-06-28 08:11:07 【问题描述】:我有一个 Ruby on Rails 网站,我在该网站上强制所有连接都是 SSL。我还需要来自该站点的所有连接才能使用 HTTPS。此外,即使我连接到另一个端口,谷歌浏览器也会自动切换到 HTTPS。
这意味着我无法连接到 http://www.mysite.com:8080 我必须通过 https 提供 juggernaut js 文件。但这不起作用,因为 Juggernaut 不想在其内部网络服务器上使用 https 而不是 http。因此,我将 juggernaut 文件夹 /usr/local/lib/node_modules/juggernaut/public/application.js 中的 application.js 文件复制到我的 rails 文件夹 public/juggernaut 中,并在我的 html 代码中更改了以下行:
到
现在我似乎至少能够启动一个剑圣对象。当我开始实际聆听时,问题就出现了。我收到此错误:
未找到:https://www.mysite.com:8080/socket.io/1/?t=1340749304426&jsonp=0
所以要么我需要
a) 能够更改它,因此我实际上可以让 Juggernauts 网络服务器使用 https 而不是 http。这个比较好。
或
b1) 修复 Juggernaut,使其不会尝试通过端口 8080 访问 socket.io 和
b2) 将 socket.io 添加到我的服务器,最好在 www.mysite.com/juggernaut 文件夹而不是根目录下。
有什么想法吗?
谢谢!
【问题讨论】:
【参考方案1】:可能有点晚了,但我能够使用它来让它工作。 (我的主宰托管在 heroku 上)
var jug = new Juggernaut(
secure: true,
host: 'yourHostHere',
port: 443,
transports: ['xhr-polling','jsonp-polling']
);
【讨论】:
以上是关于通过纯 HTTPS 连接为 Juggernaut 2 提供服务的主要内容,如果未能解决你的问题,请参考以下文章