2016-05-03 13 views
1

Amazon ELBをHTTPSで使用しています(ELBは443から80までのすべてのトラフィックをリダイレクトします)。Codeigniter - 1ページ(Amazon ELB)以外のHTTPをhttpsにリダイレクト

今、私はhttpからhttpsにすべての要求をリダイレクトするために、次のhtaccessのコードを使用して:

RewriteEngine On 
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [L,R] 
RewriteCond $1 !^(index\.php|assets) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L] 

とその作業偉大な、問題は、Amazon ELBヘルスチェックがあるため、HTTPSのリダイレクトにHTTPで失敗したことです1つのURLを除いてすべてのトラフィックをhttpsにリダイレクトする方法はありますか?

(だから私がhttpsでhttpと残りのすべてのヘルスチェックのためのURLを使用することができます)

答えて

1

は、この方法を試してください。

RewriteEngine On 
RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [L,R] 

RewriteCond %{HTTPS} on 
RewriteCond %{SCRIPT_FILENAME} /specific_controller/specific_method [NC] 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [R=301,L] 

RewriteCond $1 !^(index\.php|assets) 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php/$1 [L] 
関連する問題