리디렉션 오류 해결 대안 - 모바일 주소 '?m=1' 제거
구글 서치콘솔(Google Search Console)을 통해 블로그 상태를 점검하다 보면, 종종 302 리디렉션 오류가 발생하는 경우가 있다. 특히 블로그스팟(Blogger) 플랫폼을 사용하는 경우, 이 오류는 모바일 접속 시 자동으로 붙는 주소 파라미터 ?m=1과 깊은 관련이 있다.
리디렉션은 검색 엔진이 싫어하는 장애물 중 '하나'
왜 ?m=1이 문제인가?
블로그스팟에서는 모바일 기기로 접속하면 자동으로 주소 끝에 ?m=1이 붙는다.
https://example.blogspot.com/my-post.html >
https://example.blogspot.com/my-post.html?m=1
해결 방법 1 – 주소에서 '?m=1' 자동 제거하기
이 문제를 해결하려면, 브라우저가 페이지에 접속했을 때 주소창의 '?m=1'을 자동으로 제거하도록 해야 한다.
CSS <head> 아래 (보통 기존 script 영역이 있음)
<script type='text/javascript'> //<![CDATA[ var uri = window.location.toString(); if (uri.indexOf("%3D","%3D") > 0) { var clean_uri = uri.substring(0, uri.indexOf("%3D")); window.history.replaceState({}, document.title, clean_uri); } var uri = window.location.toString(); if (uri.indexOf("%3D%3D","%3D%3D") > 0) { var clean_uri = uri.substring(0, uri.indexOf("%3D%3D")); window.history.replaceState({}, document.title, clean_uri); } var uri = window.location.toString(); if (uri.indexOf("&m=1","&m=1") > 0) { var clean_uri = uri.substring(0, uri.indexOf("&m=1")); window.history.replaceState({}, document.title, clean_uri); } var uri = window.location.toString(); if (uri.indexOf("?m=1","?m=1") > 0) { var clean_uri = uri.substring(0, uri.indexOf("?m=1")); window.history.replaceState({}, document.title, clean_uri); } //]]> </script> |
경로 예시안 <script></script> 사이가 아닌 새로운 영역에
이 경우를 활용해 여러가지 응용도 할 수 있다.
리디렉션 '?m=1' 제거만으로 해결
해결 방법 2 – URL 검사에서 '?m=1'이 포함된 색인
'?m=1' 제거하는 방법 외에 다른 방법도 있다. 처음 색인생성 요청을 할때 '?m=1' 포함된 주소로 색인을 하면 된다. 그럼 기존 데스크탑(일반 PC)에서 인식 되는 주소도 포함되어 색인이 가능하다.
하지만 매번 수기로 해야한다. 이 점은 참고하자.
블로그스팟은 글만 쓰는 것이 전부가 아니다.
검색엔진 최적화(SEO)는 기술적인 디테일에서 큰 차이를 만든다.
블로그스팟을 사용하는 경우, '?m=1' 주소 파라미터는 단순한 뷰 전환용이지만, 구글 크롤러에게는 다른 URL로 인식된다.
따라서 이를 제거해 주소를 일관되게 유지하는 것은 검색 색인 품질을 유지하고 오류를 줄이는 핵심 방법이다.
그럼 끝