2012-06-22 3 views
3

내가 가지고있는 HTTP 요청을 리디렉션 내 htaccess로 파일에 다음을htaccess로는

RewriteEngine On 

RewriteCond %{HTTP:X-Forwarded-Proto} !https 
RewriteCond %{HTTP_HOST} ^newco.local,^newco.dev 
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [L,R] 

RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteRule ^.*$ index.php [NC,L] 

이 파이어 폭스에서 제대로 리디렉션하지만 크롬이나 사파리하지 HTTPS로 브라우저의 차이 HTTPS로 리디렉션. 이것은 http://newco.phpfogapp.com 에서 phpfog에서 호스팅됩니다. 그래서 https를 확인하기 위해 % {HTTP : X-Forwarded-Proto}를 사용해야하는 ssl이로드 균형에서 종료됩니다. 다른 브라우저에서이 문제가 발생할 수 있습니까? 어떤 아이디어?

답변

-1

가변 변수 %{HTTPS}을 사용해보십시오.

요청이 HTTPS 인 경우 변수는 on이고, 그렇지 않으면 off입니다.

예제 코드 : 여기

RewriteCond %{HTTPS} !=on 
RewriteCond %{HTTP_HOST} ^newco.local,^newco.dev 
RewriteRule^https://%{SERVER_NAME}%{REQUEST_URI} [L,R] 

전체 Apache Mod_Rewrite Documentation

+0

영업 이익은 명확하게, 그래서'한다 RewriteCond를 HTTPS는로드 밸런서에서 끝 그래서 모든 요청은 아파치의 포트 80 (일반 HTTP)을 얻을 것을 주장한다 % {HTTPS}! = on'은 옵션이 아닙니다. –