[英]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路由。 這是您可以做的一些事情。
將您的Elastic Beanstalk應用程序分離為兩個單獨的Elastic Beanstalk應用程序,一個用於SSL,另一個用於非SSL流量。
在Rails應用程序中更改路線設置。 這篇文章解釋了如何對某些路由強制使用SSL: Rails 3 SSL Deprecation 。 您可以為自己的API強制使用SSL,並讓www
流量為非SSL
不要使用Elastic Beanstalk並通過自動縮放將應用程序托管在EC2中並進行設置,以使其在Apache或nginx的前面,並創建您的特定重寫規則,以確保按您希望的方式提供每個URL(www到HTTP)和SSL的API)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.