Я пытаюсь найти лучший способ сделать URL-адреса скрепки безопасными, но только для защищенных страниц.
Например, главная страница, на которой показаны изображения, хранящиеся в S3, имеет вид http://mydomain.com, а URL-адрес изображения — < a href="http://s3.amazonaws.com/mydomainphotos/89/thisimage.JPG?1284314856" rel="noreferrer">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, поэтому может быть способ связать его с ним.
Я уверен, что есть какой-то простой стандартный способ сделать это, который я упускаю из виду, но я не могу его найти.