使用YUI3和HTTPS的“正确”方法是什么?

时间:2013-01-10 21:14:09

标签: https yui

我对YUI2有很多经验,我正在加快YUI3的速度。我正在编写的服务需要HTTPS,但是vanilla YUI体验来自雅虎仅支持HTTP的CDN,当浏览器尝试将HTTPS页面与HTTP javascript混合时,Chrome在Chrome中悄然失败并在现代IE中大声失败。

我的目标是获得所有:

  1. 网站使用HTTPS
  2. YUI适用于Chrome& IE(因此脚本也必须通过SSL提供)
  3. 使用YUI 3的现代版本(这取消了YUI PHP Loader的资格,该版本尚未更新以支持甚至YUI 3.4,而3.8是“当前”)
  4. 使用汇总组合代替许多JS和CSS文件(这取消了Google的CDN ......如果YUI 3实际上是在那里托管的,我找不到。)
  5. 站点动态加载YUI依赖项(当我添加功能时,依赖项会定期更改,返回configurator并每次保存新的捆绑包都是PITA)
  6. 显而易见的解决方案似乎是放弃目标#5而只是自主组合。

    如何实现所有5个目标?

2 个答案:

答案 0 :(得分:7)

解决问题的最简单方法是从中更改基本网址 http://yui.yahooapis.com/
https://yui-s.yahooapis.com/

答案 1 :(得分:3)

根据您的服务器环境,您有几个选择。

开发

  • Download the latest YUI library,并将yui/build/文件夹上传到您的服务器。种子文件应该可以正常工作而不需要修改,但是你将无法利用组合加载。

生产

  • 使用YUI Configurator确定每个模块集所需的所有文件,并从提供的组合链接中手动下载。将它们重命名为适合yui3.8.0-node-rollup.js的内容,并将其提供给您的用户。

请注意,如果您为不同的脚本使用不同的模块集,可能需要根据您的设置方式制作多个文件集。如果你很好奇的话,还有a question here关于将Javascript连接在一起。


作为附录,在我的past research中,我发现通过安全连接提取外部库可能不是一个安全的想法。