2017. 1. 24. 09:36 IT

301 redirect, 302 redirect.

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

금일은 리다이렉트 방법에 대해 알아봅니다.


301 redirect는 영구적으로 옮겼을때,

302 redirect는 일시적으로 옮겼을때 사용합니다.


검색엔진 최적화에는 301 redirect 추천합니다.


사이트를 새로운 도메인으로 옮겼다던가 페이지의 주소가 바뀌었을때 사용자들을 자동으로 바뀐 주소로 옮겨가게 만드는데는 두가지 방법이 있습니다.

301 permanent redirect와 302 temporary redirect 입니다.


301과 302는 사용자가 브라우저를 통해 웹서버에 요청했을때 돌려받는 웹서버의 상태코드입니다.

301은 요청한 정보가 새로운 주소로 영구적으로 옮겨갔다는것을 말해주며 302는 일시적으로 옮겨갔다는것을 말해줍니다.

표면상으로는 둘다 자동으로 사용자를 옮겨가게 만드니 사람의 육안으로는 구별할수 없으나 검색엔진 크롤러는 그 차이를 알수 있고, 이 두가지가 검색엔진 최적화에 미치는 영향은 꽤 큽니다.


301 permanent redirect

이것은 말그대로 요청한 정보(사이트나 페이지)가 영구적으로 옮겼다는것을 말해줍니다.

예를 들어 aaa.com을 소유했던 사람이 bbb.com으로 사이트 주소를 옮겼을때 301 redirect를 해준다면 크롤러가 aaa.com에 접속했을때 aaa.com에서 인덱스한 내용의 주소가 bbb.com으로 바뀌었다는것을 감지하고 인덱스된 aaa.com의 주소를 자동으로 bbb.com으로 변경시켜 줍니다.

이럴경우 ‘aaa’라는 키워드로 aaa.com이 검색결과에 나오던것이 bbb.com으로 나오게 되는 것입니다.

이렇게 되면 사이트 관리자는 손쉽게 검색엔진에 변경된 사항을 적용할수 있게되고 검색엔진을 통해 유입되는 트래픽을 잃지 않게 됩니다.

그외에 www.aaa.com을 ‘www’가 빠진 aaa.com으로 지정하고 싶다던지 www.aaa.com/product.html?a=samsung&b=galaxy&c=tab 같은 url을 www.aaa.com/samsung/galaxy/tab 같이 읽기 쉬운 형식으로 바꾸고 싶을때 유용하게 쓰입니다.


302 temporary redirect

302 redirect는 현재 페이지나 사이트를 일시적으로만 옮겼다는것을 말해줍니다.

대부분 javascript를 이용한 redirect, 메타태그(< meta http-equiv="refresh" content="0;url=http://새로운주소.com" />)를 이용한 redirect 또는 각각의 프로그래밍 언어를 사용한 단순 redirect가 이에 포함됩니다.

aaa.com 소유자가 bbb.com으로 사이트를 옮겼는데 잘모르고 302 redirect를 해주게 되는경우 사용자는 자동으로 옮겨가게 되지만, 크롤러는 사이트가 옮겨갔다는것을 감지하더라도 일시적으로만 옮겨간것으로 간주하기 때문에 검색결과에 아무런 변화를 주지 않게 됩니다.

그래서 특정 키워드로 검색을 했을때 aaa.com이 나오던것이 bbb.com으로 업데이트되지 않게 됩니다.

간혹 이것을 악용하여 특정 키워드로 최적화된 페이지를 방문한 사용자를 자동으로 페이지와 전혀 상관없는 광고성 페이지로 옮겨가게 만드는 경우도 있습니다.

구글은 이를 doorway page로 여겨 페널티를 부과하기때문에 302 redirect를 사용할때에는 잘 생각해보시고 사용하시기 바랍니다.

대부분의 경우 302 보다 301 redirect를 사용하시는것을 추천합니다.


301 redirect 사용방법

301 redirect 사용방법에는 여러가지가 있습니다.

사용하는 프로그래밍 언어에 따라 약간씩 틀리고 .htaccess 파일 수정을 통해 mod_rewrite을 사용할수 있습니다.

1. PHP redirect

<?php

header( "HTTP/1.1 301 Moved Permanently" );

header( "Location: http://www.new-url.com" );

?>


2. JSP(Java) redirect

< %

response.setStatus(301);

response.setHeader( "Location", "http://www.new-url.com/" );

response.setHeader( "Connection", "close" );

%>


3. ASP.NET redirect

<script runat="server">

private void Page_Load(object sender, System.EventArgs e)

{

    Response.Status = "301 Moved Permanently";

    Response.AddHeader("Location","http://www.new-url.com");

}

</script>


4. ASP redirect

< %@ Language=VBScript %>

< %

Response.Status="301 Moved Permanently"

Response.AddHeader "Location","http://www.new-url.com/"

%>


5. Ruby on Rails redirect

def old_action

headers["Status"] = "301 Moved Permanently"

redirect_to "http://www.new-url.com/"

end


6. CGI Perl redirect

$q = new CGI;

print $q->redirect("http://www.new-url.com/");


7. .htaccess mod_rewrite

RewriteEngine on

RewriteRule (.*) http://www.new-url.com/$1 [R=301,L]


'IT' 카테고리의 다른 글

Specified VM install not found: type Standard VM, name jre8  (0) 2017.03.07
IT업계 수익모델 총정리  (0) 2017.01.24
소켓(Socket) 설명. 이해.  (0) 2017.01.18
소켓 통신. 네트워크 프로그래밍.  (0) 2017.01.18
UI 라이브러리  (0) 2016.08.31
Posted by 당양부부34

블로그 이미지
주요 토렌트를 블로깅하고 있습니다. 토렌트 순위 등은 다른 사이트를 찾아보세요. 주요 웹툰 순위도 게재했어요 경제를 좋아하는 일산의 행복한 프로그래머입니다.
당양부부34
Yesterday
Today
Total

달력

 « |  » 2024.4
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30

최근에 올라온 글

최근에 달린 댓글

최근에 받은 트랙백

글 보관함