검색 결과에서 낡은 글·짧은 글 차단
목차
블로그의 SEO 건강도를 해치는 얇은 포스트와 백데이트된 오래된 글들에 noindex 메타 태그를 붙였다. 단순한 기술 수정처럼 보이지만, 시스템에서 "어떤 콘텐츠를 중요하게 보일 것인가"를 결정하는 정책 개선이었다.
낮은 품질 콘텐츠가 미치는 영향
구글이 helpful content update를 밀어붙인 이후로, 품질 낮은 페이지는 사이트 전체의 신뢰도를 깎아먹는다. 800자 미만의 얇은 포스트나 2026년보다 훨씬 전에 작성된 백데이트된 글들은 사실 실질적인 가치를 거의 제공하지 못한다. 트렌드가 바뀌거나, 당시엔 맞았던 정보가 낡았거나, 충분한 설명이 없어서 검색 사용자의 의도를 충족하지 못하기 때문이다.
이런 포스트들이 검색 결과에 계속 노출되면 몇 가지 문제가 생긴다. 사용자는 클릭했다가 별 도움이 아닌 페이지를 만나고, 그 순간 우리 블로그에 대한 신뢰가 조금씩 떨어진다. 검색 엔진 입장에서도 "이 사이트는 품질 관리가 부실하네"라고 평가해서 다른 포스트의 순위까지 깎아준다. 개별 포스트의 문제가 전체 사이트의 신용으로 번지는 것이다.
완전 삭제가 아닌 noindex 선택
처음 이 작업을 기획할 때 두 가지 방안이 있었다. 첫째는 DB에서 아예 삭제하는 것, 둘째는 <meta name="robots" content="noindex" />를 붙여서 검색 엔진에서는 제외하되 사이트 내에서는 여전히 접근 가능하게 하는 것이다.
삭제는 극단적이었다. 아무리 짧은 포스트라도 누군가는 링크를 통해 도달할 수 있고, 혹시 모를 아카이빙 목적으로 필요할 수도 있기 때문이다. 또한 완전 삭제는 비가역적이라 나중에 정책을 바꾸거나 포스트를 보완하기 어렵다. 그래서 noindex로 가기로 결정했다. 검색 결과에는 나오지 않지만 직접 링크나 관리자 대시보드에서는 여전히 접근 가능하고, 필요하면 언제든 정책을 완화할 수 있는 유연성이 있다.
구현: 조건부 로직 적용
app/main.py에 포스트 렌더링 함수를 수정해서 두 가지 조건을 체크했다:
# 의사코드 (실제 코드는 생략)
def should_noindex(post):
# 조건 1: 본문 길이 800자 미만
if len(post.body) < 800:
return True
# 조건 2: 작성일이 2026년 이전
if post.created_at.year < 2026:
return True
return False
그리고 app/templates/post.html에서 이 조건을 받아서 HTML 헤더에 meta 태그를 조건부로 렌더링한다:
{% if noindex_flag %}
<meta name="robots" content="noindex, follow" />
{% endif %}
follow를 함께 붙인 이유는, 이 페이지는 검색 결과에 나오지 않게 하되, 페이지에 있는 내부 링크들은 봇이 따라가도록 허용하기 위함이다.
숫자 선택의 트레이드오프
800자와 2026년이라는 수치는 어떻게 나온 걸까? 이게 중요한데, 숫자를 정하는 과정 자체가 팀의 의사결정이기 때문이다.
800자는 보통 "최소한 의미 있는 블로그 포스트"의 문턱으로 본다. 소개 포스트나 링크 모음은 이 이상이고, 그 이하는 스니펫이나 메모 수준이다. 너무 낮추면 (예: 300자) 다양한 길이의 콘텐츠를 허용할 수 있지만, 검색 엔진이 "얇은" 콘텐츠로 판단할 가능성이 높아진다. 반대로 너무 높이면 (예: 2000자) 제법 실질적인 글도 필터링될 수 있다. 800은 그 사이의 합리적인 지점이다.
2026년 기준도 마찬가지다. 2026년이 "현재"이므로, 그 이전 포스트는 백데이트된 것으로 본다는 정책이다. 하지만 이것도 트레이드오프가 있다. 역사적 가치가 있는 오래된 글이 함께 제외될 수도 있기 때문이다. 그래서 실제로는 팀과 대화해서 "2024년 이전"이나 "1년 이상 갱신 없음" 같은 기준으로 조정할 수도 있다.
팀과의 이야기
이 작업을 진행하면서 중요했던 건, 글쓴이들과 미리 소통하는 것이었다. 자신의 포스트가 검색에서 제외될 수 있다는 건 신경 쓸 일이니까. 대신 이렇게 설명했다: "검색 트래픽을 높이려면 품질 기준이 필요하다. 지금 기준으로 부족한 글들은 나중에 보완하거나, 시간이 좀 더 지나서 재검토할 수 있다. 삭제가 아니라 잠금 상태일 뿐이다."
다들 납득했고, 오히려 "그래서 우리 사이트 신뢰도가 더 높아지는 거구나" 하면서 자신의 글을 채우거나 삭제하는 작업도 자발적으로 시작했다.
배운 점
이런 작은 수정들이 모여야 사이트 전체가 건강해진다. 한두 개의 얇은 포스트는 큰 영향이 없지만, 열 개, 스무 개가 쌓이면 사이트 전체의 평판에 영향을 준다. 또한 정책 결정할 때는 "이건 기술 문제"라고 생각하지 말고, "팀이 어떤 콘텐츠 철학을 갖고 싶은가"로 먼저 생각해야 한다. 그 다음에 그걸 구현하는 기술을 따라간다.
🛒 이 글과 어울리는 추천 상품
*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.
댓글 0
첫 댓글 달아줘.