referer

그니·2022년 12월 1일
0

basic

목록 보기
1/1
  • http 헤더 중 하나이다.
  • http 프로토콜에는 referer 라는 헤더값이 있는데, 브라우저가 서버로 이 헤더값을 설정해서 보내게 된다.
  • 서버는 referer를 참조함으로써 현재 표시 하는 웹페이지가 어떤 웹페이지에서 요청되었는지 알 수 있다.
  • 어떤 웹사이트나 웹서버에서 방문자가 왔는지를 파악할 수 있는 기능referer 를 통해 할 수 있다.

브라우저가 서버로 이 헤더값을 보내 설정, http 프로토콜의 헤더중 하나, 서버는 이 header.referer 를 참조함으로써 현재 표시 하는 웹페이지가 어떤 웹페이지에서 요청되었는지 암.

google.com라는 웹페이지에 있는 링크를 클릭하여 → toss.com 로 이동 시 referer는 google.com

현재 표시 하는 웹 페이지가 어떤 웹페이지에서 요청

헤더에 담겨 있는, 현재 페이지에게 요청을 함 "이전 페이지의 uri정보” 를 줘! 그럼 referer에 담김.


http 헤더에는 User-Agent, Host, Origin 여러 정보들이 있는데,

서버에서 ‘프로토콜://호스트:포트/경로?쿼리스트링’ 으로 되어있는 전체 경로 즉, uri 정보를 알고싶다면

헤더의 Referer를 참조.

대부분의 웹서버에는 이전(before) 트래픽로그가 존재하며, 브라우저가 송신한 HTTP referer을 기록하고 있다. referer 정보는 프라이버시에 관계, 송신하지 않는 설정 가능.

올바른 referer 정보를 보내지 않으면 문제 발생 → 웹서버는 자신의 페이지 중 일부 페이지에 올바른 referer 정보를 송신하지 않는 브라우저에 대해 엑세스를 블록해버림.

(타 사이트 직접 링크, 이미지의 부정 사용) → referer는 현재 페이지에 요청하는 이전 페이지의 요청이니, 이전 페이지의 uri를 토대로 옳지 않은 호스트 구분 가능.


referer 사용처

결국 referer의 값은 이 페이지를 요청한 이전 페이지가 무엇인지를 알려주는 정보.

  • 로그 분석
  • 접근 제어

로그 분석

우리 사이트로의 유입이 어떤 검색서비스를 이용한 것인지 알고자

접근 제어

  1. 게시물을 저장할 때에는 그 전에 게시물을 쓰는 페이지에서 저장을 요청한다.
  2. 때문에 ‘저장’ 페이지에서 referer값을 체크해서, ‘쓰기’ 페이지가 referer 값이 아니면 요청을 거부.

완벽한 접근제어X, 임시적으로 제어를 할 경우 간단하기에 꽤 유용.

0개의 댓글