현재 HTTP를 통해 제공되는 작은 하위 페이지가 있어야하지만 HTTPS를 통해 나머지를 제공하는 것이 바람직한 레일 기반 웹 응용 프로그램이 있습니다. 현재 AWS 설정에서 SSL은 탄력적 인로드 밸런서에서 종료되고 내 앱 서버와의 모든 통신은 HTTP를 통해 이루어집니다. 이 때문에 Rack SSL Enforcer 같은 솔루션은 적합하지 않습니다. 현재, 나는 리디렉션을 처리하기 위해 각 페이지에 다음 JS 조각을 제공하고 있습니다 : 이것은 상대적으로 상당한 성능 결과AWS Elastic Load Balancer가 선택적으로 SSL을 활성화합니다.
<% if should_be_ssl? %>
<script>
if (window.location.protocol != "https:"){
window.location.href = "https:" + window.location.href.substring(window.location.protocol.length);
}
</script>
<% else %>
<script>
if (window.location.protocol != "http:"){
window.location.href = "http:" + window.location.href.substring(window.location.protocol.length);
}
</script>
<% end %>
다음 페이지 중 하나에 액세스 할 때마다했다. SSL을 통해 특정 페이지를 선택적으로 제공하고로드 밸런서 수준에서이를 제어하는 방법을 알고있는 사람이 있습니까?
감사합니다. Joe! 오늘 이것을 확인해보고 이것이 저에게 효과가 있는지 알려 드리겠습니다. –
이봐, @ DanL. 어떻게 된거야? rack-ssl-enforcer가 작업을 완료 했습니까? –
도움에 감사드립니다. –