2012-05-08 3 views
2
내가 www를 제외하고 하위 도메인을 사용하지 않을

제외하고 하위 도메인을 해제, 그래서 이것은 더 이상 작동하지 않을 것입니다 : subdomain.mysite.tld,하지만이 것 : www.mysite.tld 또한htaccess로는 - WWW

내가 mysite.tld에서 www.mysite.tld으로 리디렉션하고 싶은데 어떻게해야할지 알고 있지만 wwwite로 리디렉션하지 않고 mysite.tld가 있으면 금지 된 오류가 발생합니다 ...

RewriteCond %{HTTP_HOST} !mysite.tld$ [OR] 
RewriteCond %{HTTP_HOST} !www.mysite.tld$ 
RewriteRule .* - [F] 

RewriteCond %{HTTP_HOST} !^www 
RewriteRule .? http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

답변

4

는 당신이 시도 할 수 : WWW에 다시

RewriteCond %{HTTP_HOST} !^(www\.)?mysite\.tld$ [NC] 
RewriteRule^- [F,L] 

RewriteCond %{HTTP_HOST} !^www\. [NC] 
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 
+0

그 두 가지 옵션을 생각, 맞죠? 그래서 마리안이 하나 골랐어 요. – Gerben

+0

@ Gerben : 죄송합니다. 귀하의 의견을 이해하지 못했습니다. – anubhava

+0

첫 번째 RewriteRule이 두 번째 RewriteRule과 일치하면 결코 실행되지 않습니다. – Gerben

1

대상

Options +FollowSymLinks 
RewriteEngine on 
RewriteCond %{HTTP_HOST} ^mysite.tld[nc] 
RewriteRule ^(.*)$ http://www.mysite.tld/$1 [r=301,nc] 
+0

하위 도메인의 문제가 해결되지 않습니다. 대신에'RewriteCond % {HTTP_HOST}를 사용하십시오!^www \ .mysite \ .tld $ [NC]' – Gerben

+1

그래, 서브 도메인 문제를 해결하지 못한다고 언급 했어야했는데 ... 어떻게해야할지 모르겠다. 감사! –