做了四年多的游戏服务端,对 web 的东西比较陌生。最近 H5 游戏兴起,公司内也有了不少 H5 项目组。H5 是 web 标准,就免不了被注入广告的问题。所以不少平台要求新上的游戏,采用 HTTPS。但采用 HTTPS 会有几个问题。
1.H5 游戏主要分为资源加载和服务器通信两部分。资源加载是普通的 web,只需要按 HTTPS 部署,不会有太大的问题。与服务器通信则较为麻烦,是采用 websocket 或者 socket.io 这种原生的 socket 与服务器进行二进制数据交互。由于 ARPG 类游戏通信量巨大,在完成验证后并没有加密的需求,所以这块并不想改动。现在想知道,在浏览器中,主站是 HTTPS 的,然后用 js 发起了一个非 HTTPS 的 socket 连接(这个 socket 并不是以 http 报文通信),浏览器是否会把这个网站标记为"不安全"或者“并非完全安全”。
2.证书问题。国内很多都是小服运营,随便打开一个游戏,都开了几千个服务器。这意味着,高峰时将会有几百台物理服务器(或云服务器),对应几百个 IP。而证书是对应域名的,普通证书一个证书对应一个域名显然不能用。通配证书似乎可能一个证书对应多个二级域名,比如对应 srv1.example.com 、srv2.example.com...。但即使这样,貌似申请域名的时候二级域名的数量是有限的,即使供应商那边不限制,每增加一个域名,就需要运维去绑定一下 IP,不仅麻烦还有个时效的问题。而且公司购买的服务器是根据业务来增减的,这非常不灵活。
PS:我所在的项目组并不是 H5,具体需求我并不清楚。只是这几天隔壁项目组和运维撕逼了很久,自己旁边听到了也想了下这个问题,也没有好的解决方案。运维因为技术这边出的方案太复杂,部署容易出错,拒绝执行中...
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.