【问题标题】:Serving images through either HTTP or HTTPS通过 HTTP 或 HTTPS 提供图像
【发布时间】:2014-03-30 22:46:58
【问题描述】:

使用常规的cl_image_tag(carrierwave_object) 将始终生成http://cloudinary-url URL,如果大多数浏览器通过https 连接到网站,则无法在大多数浏览器上加载。是否可以让云服务 URL,例如 //cloudinary-url,以便浏览器可以自行选择协议,而无需找到每个 cl_image_tag 调用并手动更改它?

请注意,我在 Rails 3.2.x 中使用 cloudinary_rb gem

谢谢!

【问题讨论】:

  • 是吗?我一定是错过了配置变量,看看我能不能找到它!
  • @Bartdude 配置选项就在cloudinary.com/documentation/… - 在您的评论中写下一个答案(包括链接以及其他人),我会标记它:)

标签: ruby-on-rails ruby cloudinary


【解决方案1】:

您可以使用cloudinary over https

这对于您网站的非 https 用户来说不是问题,因为在该方向上没有安全警告...

【讨论】:

  • 叹息,另一个警告:子域的 HTTPS 传递不起作用。我们现在必须使用 HTTP URL,因为不使用 CDN 子域是不可能的。但是,它不会阻止图像加载。
【解决方案2】:

您可以创建一个帮助程序,它会接受一个 url 并根据您的情况生成一个 httphttps url。如果您在 httphttps 上,您始终可以从您的 request 对象中知道您的视图/助手。

【讨论】:

  • 没错,但这意味着我需要停止使用 cloudinary_rb 提供的帮助器。
  • 只要有帮助,就可以使用外部 gem :-) 如果 cloudinary 解决的问题比与协议无关的 url 解决的问题多,那么您应该继续使用它。
猜你喜欢
  • 1970-01-01
  • 2012-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-05
  • 2011-05-20
  • 2011-10-30
  • 1970-01-01
相关资源
最近更新 更多