예를 들어, 쇼핑몰에서 홈으로 접속하는 방문자들이 특정 상품 페이지로 이동하도록 하고 싶은 경우가 있습니다. 이 경우 Apache 웹서버의 경우 .htaccess 파일에 코드를 추가하여 리디렉션시킬 수 있습니다. 워드프레스의 경우 테마 함수 파일에 커스텀 코드를 추가하여 전면 페이지로 유입되는 방문자들을 특정 페이지나 URL로 리디렉션시킬 수 있습니다. 티스토리의 경우 자바스크립트를 사용하여 리디렉션시킬 수 있습니다.
홈페이지만 다른 페이지 또는 URL로 리디렉션시키는 방법
.htaccess를 통해 홈을 다른 페이지/URL로 리디렉션시키기
.htaccess 파일에 접근할 수 있는 경우, 다음과 같은 코드를 추가하여 리디렉션시킬 수 있습니다.
RedirectMatch 301 ^/$ https://example.co.kr/shop/
- 또는 -
RewriteEngine On
RewriteRule ^$ https://example.co.kr/shop/ [L,R=301]
301은 영구적인 리디렉션을 의미합니다.
- 301 리다이렉트는 검색엔진과 사용자들이 올바른 페이지로 이동하도록 하는 데 사용됩니다. 301 상태 코드는 해당 페이지가 영구적으로 다른 위치로 이동했을 때 사용됩니다.
- 302 리다이렉트는 일시적인 리디렉션이며 사용자들과 검색엔진에게 제한된 기간 동안 원하는 페이지로 이동하도록 지시합니다. 302 found (HTTP 1.1) 또는 moved temporarily (HTTP 1.0)가 표시될 수 있습니다.
302 리다이렉트는 임시 리다이렉트를 나타내지만 몇 주 이상 유지되면 영구적인 리다이렉트로 구글에서 인식한다고 합니다.
영구적인 리디렉션이 아닌 경우에는 301을 302로 바꾸거나, RedirectMatch에서 301을 삭제하거나 RewriteRule에서 "=301"을 삭제하시기 바랍니다.
임시 리디렉션인 경우:
RedirectMatch 302 ^/$ https://example.co.kr/shop/
nginx 웹 서버를 사용하는 경우 홈을 특정 URL로 리디렉션시키기
nginx 서버를 사용하는 경우에는 다음과 같은 코드로 테스트해보시기 바랍니다.
location = / {
return 301 https://example.co.kr/shop/;
}
// 출처: https://serverfault.com/questions/491007/redirect-only-home-page
워드프레스에서 홈(전면 페이지)를 특정 페이지나 URL로 리디렉션시키려는 경우
워드프레스에서 전면 페이지만 특정 페이지로 리디렉션시키고 싶은 경우 다음과 같은 코드를 테마의 함수 파일([**functions.php**])에 추가하도록 합니다.
// Redirect WordPress homepage (front page) only to a specific page or URL
function redirect_homepage() {
if( ! is_home() && ! is_front_page() )
return;
wp_redirect( 'https://example.co.kr/shop/', 301 );
exit;
}
add_action( 'template_redirect', 'redirect_homepage' );
차일드 테마를 만들어서 작업하시기 바랍니다.
티스토리에서 홈을 특정 페이지나 글로 리디렉션시키려는 경우
티스토리에서는 자바스크립트로 특정 페이지로 유입되는 방문자를 다른 페이지로 리디렉션시킬 수 있습니다. 여기에 대해 이 블로그의 다른 글에서 다룬 적이 있습니다.
홈으로 접속하는 방문자를 특정 페이지로 이동시키려면 다음 자바스크립트 코드를 추가하도록 합니다.
<script>
if ( window.location.pathname == '/' ) {
location.href = 'https://avada.tistory.com/1';
}
</script>
위의 코드를 </body> 바로 위에 삽입하여 테스트해보시기 바랍니다. 잘 작동하지 않으면 </head> 바로 위에 추가해보시기 바랍니다.
참고
https://avada.tistory.com/2683
https://avada.tistory.com/2669