什么是「;对",;如何将YUI3与HTTPS结合使用?

什么是「;对",;如何将YUI3与HTTPS结合使用?,https,yui,Https,Yui,我对YUI2有着丰富的经验,而且我正在加快YUI3的进度。我正在编写的服务需要HTTPS,但香草YUI体验是从雅虎的纯HTTP CDN加载的,当浏览器试图将HTTPS页面与HTTP javascript混合使用时,该CDN在Chrome中悄然失败,在现代IE中则明显失败 我的目标是实现以下所有目标: 网站使用HTTPS YUI在Chrome&IE中工作(因此脚本也必须通过SSL交付) 使用YUI 3的现代版本(这将取消资格,该资格尚未更新以支持YUI 3.4,而3.8是“最新版本”) 使用滚动组

我对YUI2有着丰富的经验,而且我正在加快YUI3的进度。我正在编写的服务需要HTTPS,但香草YUI体验是从雅虎的纯HTTP CDN加载的,当浏览器试图将HTTPS页面与HTTP javascript混合使用时,该CDN在Chrome中悄然失败,在现代IE中则明显失败

我的目标是实现以下所有目标:

  • 网站使用HTTPS
  • YUI在Chrome&IE中工作(因此脚本也必须通过SSL交付)
  • 使用YUI 3的现代版本(这将取消资格,该资格尚未更新以支持YUI 3.4,而3.8是“最新版本”)
  • 使用滚动组合来提高速度,而不是使用许多JS和CSS文件(如果YUI 3真的托管在那里,而我找不到的话,这将取消谷歌CDN的资格。)
  • 站点动态加载YUI依赖项(随着我添加功能,依赖项会定期更改,每次都返回并保存一个新包是一个PITA)
  • 显而易见的解决方案似乎是放弃目标5,而只选择自主组合


    如何实现所有5个目标?

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

    发展
    • ,并将
      yui/build/
      文件夹上载到服务器。种子文件在没有修改的情况下应该可以正常工作,尽管您无法利用组合加载
    生产
    • 使用确定每个模块集所需的所有文件,并从提供的组合链接手动下载这些文件。将它们重命名为合适的名称,如
      yui3.8.0-node-rollup.js
      ,并将其提供给用户
    请注意,如果对不同的脚本使用不同的模块集,则可能需要在此过程中生成多个文件集,具体取决于设置方式。如果您好奇的话,还可以将Javascript连接在一起



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

    解决这个问题的最简单方法是将基本URL从


    这听起来像是一个“要求”,要求所有内容都通过HTTPS。为什么要通过安全连接加载公开可用的javascript库?如果您对库的源代码有疑虑,请获取一个本地副本。事实上,我并不是对它有疑虑,而是没有人通过SSL托管dynamic combo builder。我已经在承受为Stripe和Google Analytics加载外部JS的风险。谢谢,Chip,这基本上就是我现在要做的。澄清了我的问题,以便更好地理解为什么这不是很理想。您的第一个和第二个链接说“无法找到请求的服务器”。我使用的是3.17.2版。我将yui-min.js本地化到我的服务器上,并在代码中将yui.yahooapi.com替换为yui-s.yahooapi.com。这对我很有用!或者尝试更改基本URL,如以下回答所示: