在Amazon S3上托管单页应用程序的缺点/阻碍因素是什么?

时间:2014-05-28 20:08:31

标签: architecture amazon-s3 cross-domain blogs

基本上我想做一个博客。由于实际的博客内容是静态的,所以将其上传到S3似乎很合适 - cheap& amp;基本上可以无限扩展,以防黑客新闻或Reddit曾经发现它(不太可能,但你永远不知道)。 但是,我希望有一些动态部分,比如搜索。

我目前的想法是,博客将是在S3上上传到域的HTML,而从Javascript调用并返回搜索结果的实际服务器端组件将托管在其他地方(可能在子域中)。

基本上第一次打击始终是S3。如果用户想要获得更多的互动"只有这样他才真正查询服务器。但只要访问是只读的,没有额外的交互(最有可能是流量高峰的情况),S3可以优雅地处理事情,而不像微不足道的VPS。

根据这个问题/答案:Serving Django API on Heroku and single-page app on Amazon S3 on the same domain这是不可能的。

现在仍然如此吗?谢谢。

1 个答案:

答案 0 :(得分:1)

我建议您将www.yoursite.com配置为指向S3存储桶并在子域(dynamic.yoursite.com)上运行动态内容。我不知道你打算如何做动态部分,但你有几个选择:

  1. 将它们保持为相互链接的独立网站。这可能很有用,例如,如果您的页面在S3上,而您的搜索索引在VPS上。当用户进行搜索时,搜索请求将POST到dynamic.yoursite.com上的页面,该页面将返回结果列表。此结果列表可以根据需要引用www.yoursite.com中的CSS,脚本和图像,每个结果都可以链接回静态内容。

  2. 对于更复杂的共享,可以将S3或VPS配置为允许CORS。这将允许发送AJAX请求。 (请注意,虽然browser support非常宽,但仍有一些不支持CORS)