Google의 Search Advocate John Mueller 는 JavaScript 기반 웹 페이지가 Google의 캐시된 보기에서 비어 있는 것으로 나타나는 것이 정상이라고 말합니다.
JavaScript 기반 웹페이지는 Google 캐시에 비어 있거나 불완전하게 표시될 수 있으며 이는 정상이며 문제가 없음을 나타냅니다.
이는 YouTube의 Ask Googlebot 비디오 시리즈의 최신 기사에서 Google의 Search Advocate John Mueller에 의해 명시되어 있습니다.
개인이 JavaScript 페이지가 Google의 캐시된 보기에 표시되지 않는 이유를 묻는 질문을 제출했습니다.
질문은 다음과 같습니다.
“캐시된 버전의 React 페이지는 빈 페이지를 보여줍니다. SSR로 React 페이지를 코딩할 때 Googlebot이 친숙하게 만들려면 어떤 매개변수를 고려해야 합니까?”
캐시된 페이지는 Googlebot이 마지막으로 크롤링했을 때 URL이 어떻게 생겼는지에 대한 스냅샷입니다.
캐시된 페이지가 비어 있거나 콘텐츠가 누락된 것처럼 보이면 Googlebot이 크롤링할 때 문제가 발생했다고 생각하는 것이 당연합니다. 하지만 항상 그런 것은 아닙니다.
Mueller가 설명했듯이 Google의 캐시는 페이지의 HTML 요소만 캡처합니다.
Google이 JavaScript를 캐싱할 수 없다는 것이 아니라 브라우저 제한으로 인해 Google이 지연되고 있다는 것입니다.
Google의 캐시는 HTML만 표시합니다.
Mueller는 JavaScript 기반 웹 페이지를 캐싱하는 것은 어려운 일이라고 말합니다.
기술적인 면이 아니라 보안적인 면에서요.
웹 브라우저는 콘텐츠에 액세스할 수 있는 방법에 제한이 있으며 다른 웹사이트(예: Google 캐시)에서 가져온 JavaScript 파일에 대한 요청을 차단할 수 있습니다.
“Google 검색은 때때로 서버에서 가져온 HTML 페이지의 사본을 보관하고 캐시된 페이지의 형태로 사용자에게 보여줍니다. 그러나 실제로는 HTML 페이지일 뿐입니다.
JavaScript 기반 웹 사이트의 경우 여기에서 약간 복잡해집니다. 브라우저 보안 때문에 페이지에서 콘텐츠에 액세스하는 방법에 제한이 있습니다.
예를 들어 페이지에 서버의 JavaScript 파일이 필요한 경우 브라우저는 다른 웹사이트에서 오는 요청을 차단할 수 있습니다. 우리의 경우 다른 웹사이트는 Google의 캐시가 됩니다.
실제로 이것은 JavaScript 기반 웹사이트가 Google 캐시에서 표시될 때 종종 비어 있거나 불완전한 페이지를 표시한다는 것을 의미합니다. 이는 정상이며 문제의 징후가 아닙니다.”
Google 캐시의 빈 페이지가 실망스러울 수 있지만 검색에서 정말 중요한 것은 페이지의 색인이 생성되는 방식입니다.
확실히 Google은 JavaScript를 별도로 처리할 수 있으며 사용자가 볼 때 페이지의 색인을 생성하려고 합니다.
뮬러는 계속합니다.
“특히 인덱싱을 위해 Google은 JavaScript를 별도로 처리하고 사용자가 귀하의 웹사이트를 직접 방문할 때 표시되는 내용을 인덱싱 합니다. 이 렌더링 된 버전의 페이지는 다시 확인하려는 경우 Google Search Console의 테스트 도구에 표시됩니다.
대부분의 경우 Google은 JavaScript 기반 웹사이트에서 콘텐츠를 잘 렌더링하고 색인을 생성할 수 있습니다. 즉, JavaScript 웹 사이트의 캐시 보기가 비어 있거나 불완전한 것은 정상입니다. 이는 문제를 나타내는 것이 아니라 브라우저의 기술적 제한일 뿐입니다.”