반응형
HTTPS URL을 생성하도록 Paperclip을 구성 할 수 있습니까?
전적으로 HTTPS로 제공되는 사이트에서 사용자가 업로드 한 이미지를 관리하기 위해 Paperclip을 사용하고 있습니다. IE7 / IE8에서 어리석은 보안 경고를 피하기 위해 SSL을 통해 이러한 이미지를 제공해야합니다. 일반적으로 다음과 같은 것을 사용하여 이미지를 렌더링합니다.
<%= image_tag @product.image.url(:large) %>
어디
class Product < ActiveRecord::Base
has_attached_file :image,
:styles => {
:large => {:geometry => "616x450#"}
},
:storage => :s3,
:s3_credentials => {:access_key_id => "xxx", :secret_access_key => "xxx"},
:path => ":attachment/:id/:style/:basename.:extension",
:bucket => CONFIG['s3_media_bucket'],
:default_url => "/assets/image_missing.png"
생성 된 이미지 URL은 다음과 같습니다.
http://s3.amazonaws.com/media.example.com/images/6/large/image123.JPG
이것을 변경하는 마법의 Paperclip 옵션이 있습니까?
https://s3.amazonaws.com/media.example.com/images/6/large/image123.JPG
다음을 추가하기 만하면됩니다.
:s3_protocol => :https
이것은 문서에서 다룹니다 .
has_attached_file에 대한 몇 가지 S3 관련 옵션이 있습니다.
...
s3_protocol
: S3 자산에 생성 된 URL에 대한 프로토콜입니다. 'http'또는 'https'가 될 수 있습니다. : s3_permissions가 : public_read (기본값) 인 경우 기본값은 'http'이고, : s3_permissions가 다른 경우 'https'입니다.
코드를 업데이트하려면 다음과 같이 : s3_protocol을 추가하십시오.
class Product < ActiveRecord::Base
has_attached_file :image,
:styles => {
:large => {:geometry => "616x450#"}
},
:storage => :s3,
:s3_credentials => {:access_key_id => "xxx", :secret_access_key => "xxx"},
:s3_protocol => :https,
:path => ":attachment/:id/:style/:basename.:extension",
:bucket => CONFIG['s3_media_bucket'],
:default_url => "/assets/image_missing.png"
반응형
'Programing' 카테고리의 다른 글
CTE 오류 : "앵커와 재귀 부분간에 유형이 일치하지 않습니다." (0) | 2020.12.29 |
---|---|
스위치 블록 내에서 foreach 루프에서 벗어나기 (0) | 2020.12.29 |
Google Maps JavaScript API v3를 사용하여 Google지도에서 보이는 영역의 중심 좌표를 얻는 방법 (0) | 2020.12.29 |
Makefile을 사용하여 컴파일에서 소스 파일 제외 (0) | 2020.12.29 |
AngularJS : 숨겨진 양식 필드의 유효성 검사 방지 (0) | 2020.12.29 |