2016-11-03 3 views
0

Namecheap에 다른 사이트의 URL로 리디렉션하도록 설정된 도메인이 있습니다. 문제는 이제 새 사이트에없는 경로를 포함하여 모든 경로를 리디렉션합니다.도메인 .301 .htaccess redirect

그래서 이전 URL :

domain.tld/bla/bla 

404 오류가 발생

newdomain.tld/theredirectedurl/bla/bla 

된다.

내 질문은 기본적으로 어떻게 새로운 URL로 이전 사이트에서 0.301 들어오는 모든 링크 :

newdomain.tld/theredirectedurl/ 

나는 refferer 리디렉션을 설정하는 시도하지만 사이트가 Sucuri 방화벽을 통해 이동하기 때문에 내가 생각 작동하지 않습니다.

RewriteEngine On 
RewriteCond %{HTTP_REFERER} ^http://olddomain.tld/[OR] 
RewriteCond %{HTTP_REFERER} ^http://www.olddomain.tld/ 
RewriteRule .* http://www.newdomain.tld/products/lines/product/ [R=301,L] 

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

감사

+0

도메인 만 새 도메인이나 경로로 리디렉션하려고합니까? 요구 사항이 명확하지 않은 것 같습니다. –

+0

기본적으로 이전 사이트의 들어오는 모든 링크를 새 사이트의 새 URL로 리디렉션합니다. 이전 사이트의 모든 URL에 대해 간단한 301 리디렉션을 설정하지 않아도됩니다. – Pop

+0

DNS에서 도메인 전달을 설정하거나 이전 사이트를 새 서버의 [사이트 별칭] (https://httpd.apache.org/docs/2.4/mod/core.html#serveralias)으로 추가해야합니다. 그런 다음'RewriteCond % {HTTP_HOST}'를 사용하여 이전 도메인인지 확인하고 새 도메인으로 리디렉션 할 수 있습니다. –

답변

0

닫습니다. HTTP_HOST을 사용하면 즉시 리디렉션됩니다. referer [sic]는 첫 번째 페이지보기, 리소스 및 후속 클릭에만 영향을 미치지 않습니다.

RewriteEngine On 
RewriteCond %{HTTP_HOST} =olddomain.tld [OR] 
RewriteCond %{HTTP_HOST} =www.olddomain.tld 
RewriteRule^http://www.newdomain.tld/products/lines/product/ [R=301,L]