IndexLaunch
← 모든 가이드

소프트 404 오류: 정의와 해결 방법

소프트 404는 HTTP 200을 반환하지만 Google이 보기에 비어 있거나 깨진 것처럼 보이는 페이지입니다 — Search Console이 이를 표시하는 이유와 실제 해결 방법을 알아봅니다.

"소프트 404"가 실제로 의미하는 것

진짜 404는 HTTP 상태 코드를 통해 브라우저와 검색엔진에게 해당 페이지가 존재하지 않는다고 알려줍니다. 소프트 404200 OK로 응답하는 페이지입니다 — 이는 "요청하신 페이지가 여기 있습니다"라는 뜻이지만, 실제 콘텐츠는 오류 페이지처럼 보이거나 Google이 색인할 가치가 있는 실제 페이지가 아니라고 판단할 만큼 비어 있는 경우입니다. Google은 상태 코드만 신뢰하지 않고 콘텐츠를 바탕으로 의도를 추론합니다.

Google이 이를 굳이 표시하는 이유

서버가 모든 URL을 유효한 200 응답으로 주장한다면, Google은 상태 코드만으로는 정상 페이지와 깨진 페이지를 구분할 수 없어 대신 콘텐츠로 짐작해야 하며, 사이트의 모든 URL에 대해 이런 짐작을 하는 데 크롤링과 색인 처리 노력을 소모하게 됩니다. 소프트 404는 또한 잘못된 설정의 흔한 부작용으로, 자체 가동 시간 확인이나 오류 대시보드도 마찬가지로 200을 신뢰할 가능성이 높기 때문에 진짜로 깨진 페이지를 눈치채지 못하게 조용히 숨기기도 합니다.

흔한 원인

  • 일반적인 "페이지를 찾을 수 없습니다" 메시지는 표시하지만 실제로는 404/410 상태를 절대 반환하지 않는 포괄 라우트나 CMS 템플릿입니다.
  • 검색 결과가 0건인 내부 검색 결과 페이지가 빈 결과 목록을 가진 일반 페이지로 렌더링되는 경우입니다.
  • 품절되거나 삭제된 상품 페이지가 남은 콘텐츠가 거의 또는 전혀 없는 상태로 그대로 게시되어 있는 경우입니다.
  • 초기 HTML 응답이 항상 200이고 클라이언트 측 라우터가 나중에 "찾을 수 없음" 상태를 표시할지 결정하는 싱글 페이지 애플리케이션입니다 — Google의 원본 HTML에 대한 1차 크롤링에서는 이를 빈약하고 콘텐츠 없는 페이지로 볼 수 있습니다. JavaScript SEO와 색인을 참고하세요.

확인하는 방법

Search Console의 색인 생성 → 페이지 보고서는 "색인되지 않음" 아래에 소프트 404 이유와 영향을 받는 URL을 나열합니다. 처음 사용해 본다면 전체 커버리지 보고서 읽는 방법을 참고하세요. URL 검사 도구로 개별 URL을 직접 확인할 수도 있으며, 이 도구는 Google이 기록한 실제 HTTP 상태를 보여줍니다.

각 경우별 해결 방법

  • 실제로 사라진 콘텐츠: 눈에 보이는 텍스트만 바꾸지 말고, 서버나 프레임워크의 찾을 수 없음 핸들러에서 실제 404 또는 410 상태를 반환하세요.
  • 정당하게 빈약하지만 실제로 존재하는 페이지(빈 검색 상태, 재입고 예정인 일시 품절 상품 등): 200 상태는 유지하되, 관련 상품, 재입고 안내, 카테고리 링크 등 페이지가 깨진 것이 아니라 의도된 것으로 보이도록 충분한 실제 콘텐츠를 추가하세요.
  • 아예 색인되지 않기를 원하지만 404로 만들고 싶지도 않은 페이지(사용자가 정당하게 도달할 수 있는 유효한 빈 상태 페이지 등): Google에게 모호하게 남겨두지 말고 noindex 태그를 추가하세요.

오가닉 크롤링만 기다리는 것보다 더 빠르게 다음 페이지를 발견되게 하고 싶으신가요?

IndexLaunch는 URL을 대기열에 등록하는 즉시 IndexNow를 통해 Bing, Yandex, Seznam, Naver로 바로 전송합니다.

요금제 보기