2014-12-30 6 views
0

저는 최근 Windows 서버에서 godaddy, linux, cpanel 서버로 전환했습니다. 나는 htaccess와 goos 아니에요 그리고 나는이 일을 다소 간단한 일이되어야한다고 생각하지만, 나는 그것을 올바르게 할 수 없습니다.htaccess - www가 아닌 ​​www를 https로 리디렉션합니다.

내 SSL 인증서는 https : www.mydomain.com과 같은 사이트에서 작동하도록 설정되었지만 www가 아닌 ​​사이트에서는 작동하지 않습니다.

나는 모든 트래픽이 HTTPS에오고 싶은

: example.com/any-folder/any-file HTTPS로 리디렉션 :

모든 트래픽 www.example.com/any-folder/any-file에 오는 http : example.com/any-folder/any-file은 http : www.example.com/any-folder/any-file로 리디렉션되었습니다.

도움을 주셔서 감사합니다. 이 내 htaccess로 파일은 지금이 행동에 대한 이유는

RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 

모든 요청을 재 작성하는 것입니다

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301] 
+0

[HTTPS www가 htaccess로에 www가 아닌 ​​HTTP에서 리디렉션]의 중복 가능성 (http://stackoverflow.com/questions/17453412/redirect-to -http-non-www-to-https-www-htaccess) – Sumurai8

+0

가능한 중복을 시도했지만 모든 URL을 https로 리디렉션했습니다. 여기 내가 시도한 것 : 'RewriteEngine On' 'RewriteCond % {HTTP_HOST}!^www \. [NC]' 'RewriteRule^(. *) $ http://www.domain.com/$1 [L, R = 301]' 'RewriteCond % {HTTPS} off' 'RewriteRule^(. *) $ https://www.domain.com/$1 [L, R = 301]' – Tom

+0

알다시피 주석의 코드는 실제로 작동하지 않습니다. 대신에 추가 정보가 있으면 질문을 편집하십시오 ;-) – Sumurai8

답변

0

(모든 요청은 내가 혼란 스러워요 .... HTTPS로 리디렉션지고) 그 부족한 www. to http://www.example.com/$1. 또한 HTTPs 요청. 새로 고침하면 [R]으로 정의한 리디렉션이므로 새 요청이 발생합니다. 그 후

, 다음 규칙

RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301] 

https://www.example.com/$1에 https 아님 모든 요청을 리디렉션합니다. 원래의 요청이 HTTPs로되어 있지 않더라도.

이 같이 어떻게 든 그것을 할 수 있습니다

RewriteEngine On 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] 
RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteCond %{HTTPS} on 
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301] 
+0

나는 당신의 제안을 시도했지만 여전히 한 가지 문제를 가지고 있습니다. https://example.com은 https://www.example.com으로 리디렉션하지 않으므로 페이지에 인증서 오류가 표시됩니다. **** 답글에 문제가있는 경우 처음 2 개의 URL은 https ....로 시작해야합니다. 링크로 표시 될 때 표시되지 않습니다. ***** 죄송합니다. http://example.com은 (으)로 리디렉션합니다. http://www.example.com. – Tom

+0

테스트하기 전에 브라우저 캐시를 청소 했습니까? 브라우저가이 리디렉션을 캐시하므로 새 개인 정보 찾아보기 탭에서 항상 규칙 변경 사항을 다시 작성하는 것이 좋습니다. – LucasF

관련 문제