2013-01-23 4 views
2

몇 가지 답변을 찾았지만 그 중 아무 것도 내 문제에 대답 할 수없는 것 같습니다. 내 서버에는 자산 관리에 www가 아닌 ​​것을 사용하고 www 하위 도메인은 bigcartel 저장소에 지정됩니다. 내가 원하는 것은 파일이 발견되면 www가 아닌 ​​페이지의 파일을 제공하고 그렇지 않으면 원래 요청으로 www 하위 도메인으로 리디렉션하는 것입니다.디렉터리와 파일을 찾을 수없는 경우 WWW로 리디렉션

예 : redirect domainname.com/product-name ~ www.domainname.com/product-name Google 애널리틱스 서버에 없기 때문에 redirect domainname.com/product-name ~ www.domainname.com/product-name입니다.

나는 다음을 시도했다. 하지만 운이 없었어요.

RewriteEngine On 
RewriteBase/

# do not do anything for already existing files 
RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteCond %{HTTP_HOST} ^domainname\.com [NC] 
RewriteRule (.*) http://www.domainname.com/$1 [R=301,L] 

답변

0

당신은 논리적 인 조건을 거꾸로 가지고 있습니다. 요청 된 리소스가 기존 파일이거나 기존 심볼릭 링크이거나 기존 디렉토리 인 경우 조건이 변경 될 때 리디렉션되는 것처럼 보입니다. 너는 그것의 반대를 원한다 :

RewriteEngine On 
RewriteBase/

# do not do anything for already existing files 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-l 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{HTTP_HOST} ^domainname\.com [NC] 
RewriteRule (.*) http://www.domainname.com/$1 [R=301,L] 
관련 문제