2013-08-26 3 views
1

도메인 이름을 변경 한 SEO 회사는 도메인 이름을 변경했습니다.htaccess 301 새 기본 도메인 이름에 대해 와일드 카드 리디렉션

트래픽을 새 도메인으로 리디렉션하기 위해 301 재 작성을 작성했습니다. 지금까지 3 가지 변경 사항을 다시 작성했습니다. 그 중 많은 부분이 변경되었습니다. 내가 그들 모두를 끝내면, 약 30 건의 재 작성이있을 것인데, 이것은 어리석은 것처럼 보입니다!

다음 세 가지 인수가 충족되는지 확인하는 데 사용할 수있는 야생차가 있습니까?

  1. 반드시 www를 가리켜 야합니다. 번역.
  2. 항상 co.uk 버전을 가리켜 야합니다.
  3. 항상 이전 URL을 새로운 것으로 변경해야합니다. 그것은이 같은 것

...

(. ) 예를 들어 세 (.) = www.example-new.co.uk

(. ) example-old (.)/(. *) = www.example-new.co.uk/directory

아래 코드는 3 가지 문제를 분류하지만 모두 해결하지는 못합니다.

와일드 카드를 사용하는 짧은 코드가 있으면 완벽 할 것입니다.

도움을 주시면 감사하겠습니다.


# 301 --- http://example.co.uk => http://www.example-new.co.uk 
RewriteCond %{HTTP_HOST} ^example\.co\.uk$ 
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301] 

# 301 --- http://www.example.co.uk => http://www.example-new.co.uk 
RewriteCond %{HTTP_HOST} ^www\.example\.co\.uk$ 
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301] 

# 301 --- http://example.com => http://www.example-new.co.uk 
RewriteCond %{HTTP_HOST} ^example\.com$ 
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301] 

# 301 --- http://www.example.com => http://www.example-new.co.uk 
RewriteCond %{HTTP_HOST} ^www\.example\.com$ 
RewriteRule ^$ http://www.example-new.co.uk/? [L,R=301] 
+0

재 작성 엔진을 사용하는 것은 엄청나게 힘든 방법입니다 (더 어렵습니다). 다음 질문에 대한 답변을 참조하십시오. http://stackoverflow.com/questions/1100343/apache-redirect-from-non-www-to-www/ –

+0

감사합니다. 그러나 그것은 어디로 가고 있습니까? 그리고 .com 대 .co.uk 제안에 어떻게 대처할 수 있습니까? – Smurphonomics

+0

config 옵션은'httpd.conf '에 있습니다. 그것을 사용하여 도메인을 다른 도메인으로 리디렉션 할 수 있습니다. www가 아닌 ​​www가 아닌 ​​도메인으로 제한되지 않습니다. –

답변

5

당신이 다른 서브 도메인 만 www이없는 가정하면, 문제의 도메인의 루트에 .htaccess 파일이 간단한 규칙을 가질 수 없습니다 동일한 루트 example-new.co.uk의 경우 :

RewriteEngine On 
# anything that is not equal to www.example-new.co.uk 
RewriteCond %{HTTP_HOST} !^www\.example-new\.co\.uk$ 
# redirects to http://www.example-new.co.uk/anything 
RewriteRule ^/?(.*)$ http://www.example-new.co.uk/$1 [R=301,L] 

www.example-new.co.uk이 아닌 URL 경로를 사용하여 새 도메인으로 리디렉션됩니다. 내가 액세스하는 경우

그래서 :

http://example-new.co.uk/new-league <<< no wwww 

내가로 리디렉션됩니다 :

http://www.example-new.co.uk/new-league 

내가 액세스하는 경우 :

http://www.example-new.com/new-league <<< ends with .com 
http://www.example-old.co.uk/new-league <<< domain is different 
http://example-old.co.uk/new-league <<< domain is different 

을 따라서 3 위 또한 리디렉션 모든 ~까지 :

http://www.example-new.co.uk/new-league 
+0

치료를하십시오. 그렉 (Greg)이 제안한 것처럼 httpd.conf에 비해 어떤 이점이 있는지 잘 모릅니다. 내 다음 단계는 404 페이지를 다른 페이지로 리디렉션하는 방법을 알아 내려고하는 것입니다. – Smurphonomics

+0

@msfirth [친절하게이 문제를 해결하면이 답변을 올바른 대답으로 확인하십시오. 여기를 참조하십시오.] – Prix

+0

@msfirth 404는 사용자가 원하는 작업에 따라 달라집니다. 당신이 사용자 정의 404 폴더로 리다이렉트하길 원합니까? – Prix

관련 문제