콘솔창에 document.referrer를 입력하면 유저가 어디에서 왔는지 알 수 있다.
예를들어 코드스테이츠 랜딩페이지에서 지원하기 버튼을 통해 유어클래스 홈페이지에 진입하면
다음과 같이 이전 페이지를 확인할 수 있다.
document.referrer를 확인할 수 없는 경우가 있는데, 링크를 통해서 진입한 것이 아니라 직접 주소를 입력해서 진입했을때이다.
회사에서 무슨일이 있었는가?
GM팀에서 document.referrer를 통해 유입매체를 확인하려 했는데, url의 query가 짤린 도메인만 확인가능하다고 문의가 왔다.
예를들어
https://www.codestates.com/course/ai?utm_source=Kakao_notify 와 같은 페이지에서 지원하기 버튼을 눌러서 유어클래스에 도달했을때 referrer url에서는 다음과 같이 queryString인 ?utm_source = Kakao_notify 가 빠진 도메인만 확인할 수 있었다.
한참을 검색하다가 referrer정책 이란것을 알게 되었다.
meta태그로 페이지 전체에 설정하거나, a태그에 개별적으로 설정할 수 있는 것이다.
개발자 도구 element창에서 다음 meta 태그를 추가해주니 referrer url에서 queryString까지 다 확인할 수 있었다.
<meta name="referrer" content="unsafe-url">
가벼운 마음으로 랜딩페이지에 referrer를 unsafe-url로 설정한 메타태그를 설정하려다 위 방법을 쓰지 않게 되었는데
통상적으로 url을 통해 민감한 정보가 유출되는것을 방지하기 위해 타 도메인끼리는 referrer공유를 제한하고 있다는 것을 알게 되었기 때문이다.
결론
팀원들과 referrer정책에 관해 상의하다가 한 분이 기가막힌 방법을 제시해주셨다.
바로 urclass로 향하는 버튼에 모두 queryString을 직접 붙혀주는 것이다.
GM분께는 referrer를 이용한 방법은 통상적으로 이용할 수 없다는 것을 알려드리고, 대안으로 urclass로 향하는 모든 링크에 url의 queryString을 붙히는 방법을 말씀드리자 좋은방법이라고 하셨다.
'개발 > 브라우저와 네트워크' 카테고리의 다른 글
Lighthouse : Accessibility (0) | 2023.09.03 |
---|---|
사파리에서 navigator.clipboard.writeText 안되는 경우 (0) | 2023.03.20 |
Next/image로 회사 홈페이지 최적화 시도 (0) | 2022.09.27 |
SEO) robots.txt와 sitemap.xml (1) | 2022.09.22 |
TLS 프로토콜 작동방식 (0) | 2022.01.04 |