簡體   English   中英

EC2負載均衡器SSL僅在某些子域上

[英]EC2 Load Balancer SSL only on certain subdomain

我有一個Elastic Beanstalk Rails應用程序。 我也有兩個域:

api.example.com
www.example.com

我希望僅可通過SSL https://api.example.com訪問api.example.com

但是,我希望可以通過常規http訪問www.example

當前,我的負載均衡器上有兩個偵聽器,一個在端口443 ,一個在80

問題是您現在也可以在沒有SSL的情況下訪問api ,這是不可取的。

我的問題有服務器級別的解決方案嗎?

Elastic Beanstalk本身不允許您在應用程序上解耦SSL和非SSL路由。 這是您可以做的一些事情。

  1. 將您的Elastic Beanstalk應用程序分離為兩個單獨的Elastic Beanstalk應用程序,一個用於SSL,另一個用於非SSL流量。

  2. 在Rails應用程序中更改路線設置。 這篇文章解釋了如何對某些路由強制使用SSL: Rails 3 SSL Deprecation 您可以為自己的API強制使用SSL,並讓www流量為非SSL

  3. 不要使用Elastic Beanstalk並通過自動縮放將應用程序托管在EC2中並進行設置,以使其在Apache或nginx的前面,並創建您的特定重寫規則,以確保按您希望的方式提供每個URL(www到HTTP)和SSL的API)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM