반응형

 

개발자들이 제일 많이 보는 응답 상태 코드는 404 / 500 응답 코드일것이다.

이유는 간단하다. 개발을 하다보면 오류는 필연적이기 때문에 500 코드를 볼 것이고,

없는 페이지에 접속하게 되면 404 코드를 접할 수 있을 것이다. 그래서 초보 개발자들도 404 / 500 응답 코드는 익숙할 것이다. (사실 나도 이 2가지 코드가 제일 익숙하다ㅠㅠ슬프다)

 

해당 코드를 한마디로 정의 하면, 리다이렉트(이동) 해주는 코드이다. 그런데 차이점이 있을까?

차이가 있으니, 이글을 작성하면서 정리하려 한다.

 

301, Permanently Moved 

Permanently라는 뜻이 영구히, 영구적인 이라는 뜻이므로, 영구적으로 이동한다는 것이다. 요청된 리소스가 영구적으로 이동 페이지로 이동되었다는 것이다.

 

302, Temporarily Moved

Temporarily라는 뜻이 임시적, 임시적인 이라는 뜻이므로, 임시적으로 이동했다는 것을 나타냅니다. 요청된 리소스가 임시적으로 이동 페이지로 이동되었다는 것이다.

 

무엇이 다른걸까? 검색엔진의 크롤링하는 페이지가 다르다.

인터넷 브라우저에서 사용자가 A라는 페이지를 요청했는데, Url이 B라는 페이지로 변경되었다면 해당 페이지는 리다이렉트가 되었다는 것을 뜻한다.

이럴때, 301 리다이렉트를 한다면 검색엔진 크롤링에서는 B라는 페이지에 대한 수집을 하지만

302 리다이렉트를 한다면, A라는 페이지에 대해서 수집할 것이다.

언론사에서 근무를 하다보니, 구글에서 크롤링하는 가이드를 내려주었는데 해당 내용이 존재하였다.

 

그럼 301, 302 코드는 어떻게 작성하는가? ASP.NET 4.0 이후 버전에서 아래와 같이 사용할 수 있다.

4.0 이전 버전에서는 리디렉션에 헤더를 만들어 주거나, IIS 설정을 통해서 구분하였다.

 

1
2
3
4
5
// 301 Redirect
Response.RedirectPermanent(url, true);
 
// 302 Redirect
Response.Redirect(url, true);
cs

 

이동시키기 위한 url을 넣으면 끝이다.

두번째 매개변수는 옵션값이기에(Response.End() 여부이다.) 선택해서 넣으면 된다.

 

반응형

+ Recent posts