자바스크립트 SEO
javascript seo
뜻과 개념
자바스크립트로 만들어지는 내용이 검색엔진에 정상 전달되도록 관리하는 작업입니다.
어떻게 작동하나요?
자바스크립트 SEO는 스크립트로 만들어지는 콘텐츠와 링크를 검색엔진이 발견하고 렌더링하고 색인할 수 있도록 점검하는 작업입니다. Google은 자바스크립트를 실행할 수 있지만 가져온 HTML과 렌더링된 결과는 다를 수 있습니다. 화면이 내 브라우저에서 보인다는 사실만으로 수집 가능성을 판단하기는 어렵습니다.
왜 알아야 하나요?
상품 목록이나 본문이 API 응답 뒤에 표시되는 사이트에서는 스크립트 오류나 차단된 리소스가 핵심 콘텐츠를 가릴 수 있습니다. 또한 버튼 클릭 이후에만 생기는 링크는 일반적인 문서 탐색과 다르게 처리될 수 있으므로 주요 경로를 명확하게 제공해야 합니다.
실무에서 적용하는 방법
초기 HTML과 렌더링된 HTML을 비교하고 핵심 본문, title, canonical, robots 지시를 확인합니다. 이동 링크는 실제 주소가 있는 a 요소로 구성합니다. 존재하지 않는 경로가 모두 정상 상태를 반환하지 않도록 하고 Search Console의 렌더링 결과도 점검합니다.
실무에서는 이렇게 봅니다
카테고리의 다음 상품이 더 보기 버튼을 눌러야만 나타난다면 이용자 인터랙션과 별개로 탐색 가능한 페이지 주소를 제공할 수 있습니다. 서버에서 기본 상품 정보를 내려주면 스크립트가 실패해도 핵심 내용을 읽을 수 있는 구조가 됩니다.
주의할 점
검색엔진이 자바스크립트를 전혀 읽지 못한다는 주장도, 언제나 문제없이 모두 읽는다는 주장도 단순화입니다. 봇에만 다른 렌더링 결과를 주는 임시 방식은 관리 부담이 크며 Google도 동적 렌더링을 장기적인 권장 해결책으로 보지 않습니다.
자주 묻는 질문
서버 렌더링이 필수인가요?
모든 사이트에 필수는 아닙니다. 다만 핵심 콘텐츠를 초기 응답에 포함하면 다양한 클라이언트의 접근과 오류 대응이 쉬워질 수 있어 구조와 비용을 비교해 선택합니다.
robots.txt가 스크립트 파일을 막아도 되나요?
핵심 렌더링에 필요한 파일을 막으면 검색엔진이 완성된 페이지를 이해하기 어려울 수 있습니다. 페이지 주소뿐 아니라 필요한 리소스의 접근 상태도 확인합니다.