2013-05-14 4 views
1

Bluehost에서 제공 한 SSL 와일드 카드 인증서를 사용하여 하나의 하위 도메인을 HTTPS로 전환하려고합니다.HTTP를 HTTPS로 전환하는 Mod_rewrite

웹 루트에는 여러 하위 도메인이 포함되어 있으며 테스트에만 영향을주고 싶습니다. 하위 도메인 웹 루트로 가는데

, 나는 다음과 같은 htaccess로 파일을 작성했습니다 :

RewriteCond %{SERVER_NAME} ^test.mydomain.com   
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}$1 

그러나 http://test.mydomain.com/admin/index.phphttps://test.mydomain.com/admin/index.php 날 리디렉션하지 않습니다 타격.

SERVER_NAME의 조건을 없애도 여전히 작동하지 않습니다.

다시 쓰기 규칙이 좋지 않습니까?

답변

0

음, 처음에는 잘못된 .htaccess 파일에있었습니다. 내 하위 도메인의 디렉토리로 이동해야했습니다.

그러면 단순히 HTTP에서 HTTP로 전환하면 분명히 www로 리디렉션이 발생합니다. 행동.

나는

A) 시험을위한되지 않은 기존 규칙을 유지했다. B) 테스트를 추가하십시오. 규칙.

최대로 추가되었습니다.

RewriteEngine On 

RewriteBase/

RewriteCond %{HTTP_HOST} !^test.example.com$ 
RewriteRule ^index\.php$ - [L] 

RewriteCond %{HTTP_HOST} !^test.example.com$ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 

RewriteCond %{HTTP_HOST} ^test.example.com$  
RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 

RewriteCond %{HTTP_HOST} ^test.example.com$ 
RewriteCond %{REQUEST_URI} !^/test/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule (.*) /test%{REQUEST_URI} 

RewriteCond %{HTTP_HOST} ^test.example.com$ 
RewriteRule ^(/)?$ test/admin/index.php [L] 
관련 문제