【问题标题】:Pure Javascript and HTML app & deployment via CDN ... good idea?纯 Javascript 和 HTML 应用程序和通过 CDN 部署......好主意吗?
【发布时间】:2011-10-26 11:55:18
【问题描述】:

一个大而普遍的问题,虽然不是讨论

我和一个朋友正在讨论正在开发的 Web 应用程序。目前它使用 PHP,但 PHP 不存储任何东西,它都是基于 OAuth 的。整个事情都与一个独立的 API 对话。 PHP 实际上只是为不支持 Javascript 的浏览器镜像了许多 Javascript 逻辑。

如果决定强制执行 Javascript 作为一项要求(让我们不要讨论那个......整个其他问题)

将应用作为托管在 CDN 上的 HTML+Javascript 提供服务是否存在任何技术、基本问题?也就是说,100% 静态 javascript 和 HTML 没有服务器端逻辑。因为 Javascript 与 PHP 一样能够执行所有 API 调用。是否有任何现有的网站这样做?

我们想不出有什么大不了的,但是让“网络”应用程序 100% 成为客户端似乎是一个可怕的想法......所以寻找更多的输入。

(澄清一下,问题是关于仅使用 javascript 和 HTML 进行部署并放弃 JSON API 之外的服务器端处理或其他)

提前致谢!

【问题讨论】:

  • 您愿意支持哪些浏览器集?我在那里看到了你最大的潜在问题。 看着IE的过去,皱眉
  • @Jackson - 任何可行的东西,Firefox、Chrome 等 IE8+(可能)。不过很轻松。
  • @Aiden 像 Facebook 这样的大网站从他们的 CDN 加载大量 JavaScript - 所以是的,有很多网站都在这样做......
  • @Šime Vidas -- 确实,但是在 CDN 上托管静态文件和完全放弃服务器端逻辑之间存在巨大差异 ;)
  • @Aiden 啊,所以你的问题是关于制作一个完全依赖于 JavaScript 客户端代码并且没有服务器端代码的 Web 应用程序,对吧?

标签: javascript html deployment


【解决方案1】:

亚马逊在其 S3 上提供该服务已有一段时间了。 http://aws.typepad.com/aws/2011/02/host-your-static-website-on-amazon-s3.html 。本质上,这允许您指定默认索引页和错误页。否则,您只需在 S3 上加载您的 html,并将您域上的 www CNAME 指向 Amazon S3 存储桶或云端 CDN。

唯一不可能的事情是,如果用户最终输入的是 example.com 而不是 www.example.com,您需要确保您的 DNS 正确地将这些转发到 www。此外,S3 将无法处理裸域 (http://example.com/)。

关于它的好主意,对我们来说听起来也不错。我们目前正在探索这个选项。到目前为止,它似乎工作正常。我们所做的是将 beta.example.com 设置为指向 CDN 托管站点 (S3),并正在测试它是否为我们提供了所需的一切。性能虽然很棒!

【讨论】:

  • 好链接!有很多静态托管选项,问题更多的是这种交付方式的问题......即没有服务器端逻辑:)性能会很好,缩小所有内容,全部压缩:)
  • 是的。这真的取决于你在做什么。如果您有一个 Web 应用程序,比如说 stackoverflow,显然这不适合 CDN 托管。但是我们有一些使用 WordPress 托管的网站,其中 WP 主要仅用作 CMS。我认为在这种情况下,它可以转移到 CDN。我们正在考虑做的是将动态内容放在另一个子域上。假设客户登录后可访问的页面位于customers.example.com,但主要的www.example.com 将只是静态HTML/CSS + JS。但就像我说的,我们仍在探索中。
【解决方案2】:

一个问题是搜索引擎。

搜索引擎爬虫索引网页的原始 HTML 源代码。如果您使用 JavaScript 加载新数据并生成新内容,爬虫将不会发挥作用,因此您的内容不会被索引。

但是,Google 正在为此提供解决方案 - 阅读此处:http://code.google.com/web/ajaxcrawling/

除此之外,我想不出任何其他问题......

【讨论】:

  • 是的,谷歌使用服务器端无头浏览器抓取 ajax 网站很有趣.. +1
  • 还取决于 Yahoo!和 co 正在提供类似的协议/加入其中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-14
  • 1970-01-01
  • 1970-01-01
  • 2019-08-20
  • 2014-08-06
  • 1970-01-01
  • 2022-12-22
相关资源
最近更新 更多