2011-04-08 11 views
1

.htacess에서 www.domain.com으로 시작하는 모든 URL에 대해 작업을 수행하도록 지정하려면 어떻게합니까?
나는 약
RewriteCond %{HTTP_HOST} ^www.domain.com(.*)$ [NC]
에 대해 생각했지만 잘못된 것입니다.

RewriteCond %{HTTP_HOST} ^www.domain.com(?:.*)?$ [NC]
도 좋지만 그다지 좋지 않습니다.REGEX .htaccess RewriteCond parameter forming

+0

어디로 리디렉션 하시겠습니까? –

+0

다른 도메인으로 이동하거나 도메인이 변경된 유사한 URL 중 하나의 홈페이지 – tje

답변

0

당신은 HTTP_HOST를 확인하고 그 결정을 기반으로 결정했습니다. HTTP_HOST에는 요청 된 호스트 이름 만 포함되며 슬래시 또는 전체 URL의 일부는 포함되지 않습니다. 그렇기 때문에 (. *) 또는 (? :. *)를 제거하겠습니까? RewriteConds가 끝나면 다시 확인하십시오. 적어도, 그렇게 사용하는 방법입니다.

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

그것은 301 사용 "

가 아닌 www가 (단지 추측)에 www를 리디렉션 요청 된 경로가 전송되어 있는지 확인하려는 시도하셨습니다 경우,이 내 코드입니다 영구적으로 이동 "검색 엔진에 대한 리디렉션.

+0

Thanks, or dank je @Martijn;), 나는 어딘가에서 실수를 예상했다. www가 아닌 ​​www로 리디렉션하고 싶지는 않지만 www.domain.com으로 시작하는 모든 URL을 리디렉션합니다 (따라서 www.domain.com/abcd, www.domain.com/file.php 등) 다른 도메인으로 내가 한 순간에 제안한 것을 사용하려고 노력할 것입니다. – tje