2015-06-20 56 views
0

我正在使用AWS基於MEAN堆棧運行我的應用程序。我正在使用具有三個Node應用程序服務器實例的負載均衡器和三個羣集上的mongo數據庫服務器實例。以下是我的要求。 1.使用負載均衡器僅支持HTTPS 2.節點應該運行在HTTP服務器只 3.負載平衡器將重定向HTTPS和HTTP兩種請求到Apache將重定向到節點AWS負載均衡器僅支持HTTPS並自動重定向至HTTPS,以便用戶嘗試訪問HTTP

我試圖AWS和創建負載均衡。當我將80(HTTP)和443(HTTPS)端口重定向到Apache節點的80(HTTP)端口時,HTTPS才起作用。因此,截至目前,我在負載均衡器上保留了兩個端口重定向。

此外,我已將80和443入站流量定義爲安全組。

如何確保即使用戶在瀏覽器中輸入HTTP或HTTPS URL,我的負載平衡器應該始終服務器HTTPS,用戶應該只能訪問HTTPS?以下是架構圖供參考。

請指教。

回答

0

在負載平衡器上,將端口80監聽器指向實例上的端口8080。

在Apache中,改寫8080端口端口443

例如爲:

<VirtualHost *:8080> 
RewriteEngine on 
RewriteCond %{SERVER_PORT} !^443$ 
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R=301,L] 
</VirtualHost> 

的的RewriteCond可能redundent ...

相關問題