有没有办法通过SSL提供位于Google云端存储上的静态网站(实际上是SPA),以获得用户可以看到的优质SSL地址和图标?
亚马逊通过CloudFront SNI实现此目的。
答案 0 :(得分:34)
是!
通过CNAME重定向直接使用GCS只允许HTTP流量。
要在您自己的域中使用HTTPS,您需要设置Google Cloud Load Balancer,并且您也可以选择设置Google Cloud CDN。虽然它增加了一些复杂性,但Google Cloud Load Balancer允许您使用各种内容填充域。某些资源可以由GCS存储桶提供,但您也可以在GCE中为其他路径提供动态内容服务器。
有关于在此处设置此内容的说明:https://cloud.google.com/compute/docs/load-balancing/http/using-http-lb-with-cloud-storage。
答案 1 :(得分:15)
另一种方法是在CloudFlare上托管您的域DNS服务器。他们为HTTP服务提供免费的HTTPS。
更多信息:
答案 2 :(得分:7)
另一种方法是在Firebase上托管您的SPA。默认情况下,所有应用都包含SSL,即使是自定义域。它们还有一个CLI,可以轻松部署!
答案 3 :(得分:2)
如果您不依赖云端存储,则可以使用static files直接在App Engine上托管SPA。 请关注this tutorial以获得更具吸引力的内容。
如果您仍希望将SPA存储在云存储桶中,则可以使用this项目通过App Engine提供服务。实际上,您可以使用单个应用程序托管多个网站。
使用App Engine,您将获得免费托管证书和每月免费津贴。
答案 4 :(得分:0)
为简便起见,请使用FireBase,更新命令为ssh firebase deploy
,iv在几秒钟内完成了几千个html文件。
我还建议CloudFlare提供免费服务,以提供额外的保护。
答案 5 :(得分:0)
截至2019年4月:https://cloud.google.com/storage/docs/troubleshooting#https
HTTPS服务问题:我希望我的内容通过HTTPS服务。
解决方案:尽管您可以直接使用HTTPS来提供内容 诸如https://storage.googleapis.com/my-bucket/my-object之类的URI 使用CNAME重定向托管静态网站(仅限Cloud Storage) 支持HTTP。要通过SSL上的自定义域提供内容, 设置负载平衡器,使用第三方内容交付网络 使用Cloud Storage,或通过Firebase提供您的静态网站内容 托管而不是云存储。
在当今时代,让letEncrypt到处都是,他们还没有弄清楚如何做到这一点,这非常令人震惊。