2016-11-06 5 views
0

전체 웹 사이트를 다른 도메인의 단일 방문 페이지로 대체하려고합니다.htaccess 도메인의 모든 항목을 단일 페이지로 리디렉션

:

현재
new-domain.com/landing-page 

, 나는 다음의 .htaccess 파일 (파일의 다른 내용)을 사용하고 있습니다 : 그래서 다음 도메인의 모든 :에

example.com 
www.example.com 
example.com/page-1 
example.com/sub/page-2.html 

리디렉션한다

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^(www.)?example.com$ 
RewriteRule ^(.*)$ http://new-domain.com/landing-page/ [R=301,L] 

추가 세부 사항 :

  • 나는 GoDaddy Deluxe Linux 호스팅 패키지에 설치했다.
  • example.com은 애드온 도메인이 아닌 패키지의 "기본"도메인입니다. 그래서 기본적으로 내 서버 공간의 루트로 연결됩니다 (이 .htaccess 파일은 루트에 있음).
  • 다른 애드온 도메인이 여러 개 있으므로 서버에 대한 모든 트래픽을 리디렉션하는 것이 옵션이 아닙니다.
  • new-domain.com은 애드온 도메인과 동일한 서버 공간에서 호스팅됩니다. 하지 new-domain.com/landing-page-

내가 실행 해요 문제example.comnew-domain.com로 리디렉션되는 것입니다. 위에 나열된 다른 모든 예시 URL은 의도 한대로 리디렉션됩니다.

www가 아닌 ​​도메인 기반이 서브 페이지로 리디렉션되지 않는 이유는 무엇입니까?

+0

옙; 모든 것은'example.com'을 제외하고 리디렉션됩니다 (슬래시가 있거나 없음). 물론 기본적으로 가장 중요한 것입니다. – DACrosby

+0

분명히하기 위해'example.com'은'new-domain.com'으로 리디렉션하고 있지만 의도 된'new-domain.com/landing-page'는 리디렉션하지 않습니다 – DACrosby

답변

0

캐싱 문제였던 것 같습니다. FireFox에서 시도했는데 리디렉션은 모든 경우에 올바르게 작동합니다. Chrome으로 돌아가서 캐시를 지웠고 제대로 작동했습니다.

분명히 .htaccess 301 리디렉션이 현금화 될 수 있습니다.

관련 문제