TIL. 159 [HTTP] 리다이렉트(REDIRECT)란?

조윤식·2022년 9월 19일
0

HTTP 리다이렉트(Redirect)란?

리다이렉트란 말 그대로 re(다시) + 지시하다(direct) 다시 지시하는 것입니다.

예를 들어 브라우저가 www.test.com/page1 URL을 웹 서버에 요청했습니다. 서버는 HTTP 응답 메시지를 통해 "www.test.com/page2 로 다시 요청하세요~" 라고 브라우저에게 다른 URL(길, 방향) 을 지시할 수 있습니다.

HTTP 리다이렉트는 HTTP 표준으로 정의 되어 있는데 최초 요청을 받은 웹서버는 HTTP 응답 상태코드로 302를 보내고 응답 메시지 헤더 중 Location 값으로 리다이렉트 되어야 할 주소를 설정해 리턴합니다.
브라우저등의 웹 클라이언트는 HTTP 응답 메시지의 상태코드가 302라는 것을 보고 리다이렉트라는 것을 인지하여 Location 에 설정되어 있는 URL로 다시 재요청합니다.
리다이렉트가 필요한 이유
리다이렉트는 사용하기 나름이지만 네이버 카페를 예로 들어 보겠습니다.
카페마다 다르겠지만 특정 네이버 카페의 글들은 네이버 회원이라고 하더라도 해당 카페에 가입되어 있거나 혹은 카페에 가입되어 있다고 하더라고 특정 등급이 되어야 열람할 수 있는 글들이 있습니다.

만약 해당 글의 URL을 알아내어 브라우저의 주소창에 입력한 후 접근한다고 했을때 권한이 없다면 글에 대한 내용을 웹서버가 응답하면 안될 것입니다. 이때 웹서버는 글에 접근하는 요청마다 권한을 검사하고 권한이 되지 않는 경우 권한을 확인하세요 라는 경고 문구가 뜨는 페이지나 혹은 네이버 계정이 로그인 되어 있지 않은 상태라면 로그인 페이지로 리다이렉트 시킬 필요가 있습니다.

이밖에도 리다이렉트의 활용은 다양하게 존재합니다.

출처: https://dololak.tistory.com/147 [코끼리를 냉장고에 넣는 방법:티스토리]

profile
Slow and steady wins the race

0개의 댓글