Защищенные URL-адреса скрепок только для защищенных страниц

Я пытаюсь найти лучший способ обезопасить URL-адреса скрепок, но только для защищенных страниц.

Например, главная страница, на которой показаны изображения, хранящиеся в S3, - это http://mydomain.com , а URL-адрес изображения - http: //s3.amazonaws .com / mydomainphotos / 89 / thisimage.JPG? 1284314856 .

У меня есть защищенные страницы, например https: // mydomain. com / users / my_stuff / 49 , в котором изображения хранятся в S3, но протокол S3 - это http, а не https, поэтому пользователь получает предупреждение от браузера о том, что некоторые элементы на странице небезопасны, бла-бла-бла .

Я знаю, что могу указать: s3_protocol в модели, но это делает все безопасным, даже когда в этом нет необходимости. Итак, я ищу лучший способ изменить протокол на https на лету, только для защищенных страниц.

Один (вероятно, плохой) способ - создать новый метод URL, например:

def custom_url(style = default_style, ssl = false)
  ssl ? self.url(style).gsub('http', 'https') : self.url(style)
end

Одна вещь, чтобы обратите внимание, что я использую плагин ssl_requirement, так что, возможно, есть способ связать его с этим.

Я уверен, что есть какой-то простой, стандартный способ сделать это, на что я не обращаю внимания, но я могу Кажется, не нашел.

11
задан Shagymoe 22 September 2010 в 15:13
поделиться