CodeShift
블로그로 돌아가기

구글 SEO · 2026-08-13 · 7분

우리 병원 특정 페이지를 구글에서 빼고 싶다면: robots.txt와 noindex, 뭘 써야 하나

검색에 나오면 안 되는 병원 홈페이지 페이지를 구글에서 빼는 방법을 robots.txt와 noindex의 차이를 중심으로 Google 공식 문서 기준으로 정리했습니다.

핵심 요약

  • "robots.txt로 막으면 구글에서 사라진다"고 알고 계시다면 절반만 맞습니다. robots.txt는 크롤링을 막는 도구지, 검색 결과에서 페이지를 빼는 도구가 아닙니다
  • 구글 공식 문서는 "robots.txt는 웹페이지를 구글에서 제외하기 위한 수단이 아니다"라고 분명히 말합니다. 막아둔 주소도 다른 사이트가 링크하면 URL만 검색에 남을 수 있습니다
  • 검색 결과에서 확실히 빼려면 그 페이지에 noindex를 붙여야 합니다. 그리고 noindex가 작동하려면 그 페이지를 robots.txt로 막으면 안 됩니다. 구글이 태그를 읽어야 하기 때문입니다
  • 즉 두 도구는 목적이 다릅니다. "읽지 마"가 robots.txt, "읽되 검색엔 넣지 마"가 noindex입니다. 이 둘을 헷갈려 동시에 걸면 오히려 원하는 결과가 안 나옵니다

"이 페이지, 검색에 안 나오게 해주세요"

병원 홈페이지를 운영하다 보면 "이 페이지는 구글에 안 떴으면 좋겠다"는 순간이 생깁니다.

  • 종료된 이벤트·프로모션 페이지가 아직 검색에 남아 있을 때
  • 상담 신청 후 뜨는 완료 페이지, 관리자·미리보기 페이지처럼 환자가 검색으로 들어올 필요가 없는 화면
  • 같은 내용이 여러 주소로 갈라져 검색에 중복으로 뜰 때
  • 인쇄용·임시 페이지처럼 검색 노출을 의도하지 않은 화면

이때 가장 흔히 나오는 대응이 "robots.txt로 막아 주세요"입니다. 홈페이지 업체에 요청하면 대개 robots.txt에 해당 주소를 막는 줄을 넣어 줍니다. 그런데 며칠 뒤 검색해 보면 그 페이지가 여전히 검색 결과에 보이는 경우가 있습니다.

여기서부터 오해가 시작됩니다. robots.txt로 막았는데 왜 아직 뜰까요.

robots.txt는 '출입 통제'지 '검색 삭제'가 아닙니다

먼저 두 도구의 역할을 분명히 갈라 놓겠습니다.

  • robots.txt: 크롤러에게 "이 경로는 읽지 마세요"라고 요청하는 파일입니다. 즉 크롤링(방문) 단계를 통제합니다
  • noindex: 페이지 안에 넣는 명령으로, 구글이 읽더라도 "이 페이지는 검색 결과에 넣지 마"라고 지시합니다. 즉 색인(검색 등록) 단계를 통제합니다

크롤링과 색인은 다른 단계입니다. 이 구분은 서치 콘솔 색인 생성 리포트 편에서도 다뤘는데, 검색에 나오느냐를 결정하는 건 색인 단계입니다.

그래서 구글 공식 문서(robots.txt 소개)는 이렇게 못을 박습니다.

"robots.txt는 웹페이지를 Google에서 제외하기 위한 메커니즘이 아닙니다."

더 구체적인 경고도 있습니다. robots.txt로 막아 둔 주소라도, 다른 사이트가 그 주소로 링크를 걸면 구글이 페이지 내용은 못 읽은 채 URL만 검색 결과에 노출할 수 있다는 것입니다. 이 경우 제목이나 설명 없이 주소만 덩그러니 뜨기도 합니다. 크롤링을 막았으니 오히려 구글이 그 안의 noindex 신호조차 읽지 못해, 검색에서 빼달라는 뜻이 전달되지 않는 역설이 생깁니다.

정리하면 robots.txt로 막는 것은 "이 방에 들어오지 마세요"라는 팻말입니다. 방 안 물건을 목록에서 지워달라는 뜻이 아닙니다.

검색에서 확실히 빼려면 noindex

특정 페이지를 검색 결과에서 확실히 빼고 싶다면, 구글이 안내하는 정공법은 그 페이지에 noindex를 넣는 것입니다. 방법은 두 가지입니다.

1. 메타 태그 방식. 페이지 HTML의 <head> 안에 아래 한 줄을 넣습니다.

<meta name="robots" content="noindex">

2. HTTP 헤더 방식. 이미지·PDF처럼 HTML이 아닌 파일에는 서버 응답 헤더에 X-Robots-Tag: noindex를 넣습니다.

둘 중 하나가 있으면 구글은 그 페이지를 크롤링해 태그를 확인한 뒤 색인에서 제외합니다.

여기서 가장 중요한 조건이 하나 붙습니다. noindex가 작동하려면 그 페이지가 robots.txt로 막혀 있으면 안 됩니다. 구글 공식 문서(noindex로 색인 생성 차단)도 명시합니다.

"noindex 규칙이 효력을 발휘하려면 페이지가 robots.txt 파일에 의해 차단되지 않아야 하며, 크롤러가 페이지에 접근할 수 있어야 합니다."

이유는 단순합니다. noindex는 페이지 안에 적혀 있는데, robots.txt로 크롤링을 막아 두면 구글은 그 페이지를 아예 안 읽으니 안에 적힌 noindex도 볼 수 없습니다. "읽지 마(robots.txt)"와 "읽고 검색엔 넣지 마(noindex)"를 동시에 걸면, 앞의 명령이 뒤의 명령을 가려 버립니다.

그래서, 상황별로 무엇을 써야 하나

병원 사이트에서 자주 마주치는 상황을 도구별로 정리하면 이렇습니다.

상황목적권장 도구
종료된 이벤트 페이지를 검색에서 빼고 싶다검색 결과에서 제거페이지에 noindex(robots.txt로는 막지 않기)
상담 완료·관리자·미리보기 페이지애초에 검색에 안 뜨게noindex
같은 내용이 여러 주소로 중복된다대표 주소 하나로 통합삭제·noindex보다 canonical 지정
크롤링 자체를 아끼고 싶은 대용량·불필요 경로방문 자체를 줄임robots.txt 차단
검색에 꼭 나와야 할 진료·의료진 페이지노출 유지아무것도 막지 않기

세 번째 줄이 특히 병원 사이트에서 자주 헷갈리는 지점입니다. www 있는 주소와 없는 주소, PC용·모바일용 주소처럼 같은 내용이 여러 주소로 갈라진 중복이라면, noindex로 한쪽을 지우기보다 대표(canonical) 주소를 지정해 하나로 모으는 편이 맞습니다. noindex를 잘못 쓰면 검색에 남길 페이지까지 같이 사라질 수 있기 때문입니다. 이 처리 방법은 여러 주소가 있을 때 구글이 대표를 고르는 법 편에서 따로 정리했습니다.

병원 사이트에서 실제로 벌어지는 사고

도구를 헷갈리면 두 방향 모두에서 사고가 납니다.

방향 1 — 빼고 싶은데 안 빠짐. 종료된 이벤트 페이지를 robots.txt로만 막아 두고 "사라졌겠지" 하고 방치합니다. 그런데 그 페이지로 걸린 외부 링크나 이전 캐시 때문에 URL이 검색에 계속 남습니다. 검색해 보면 아직 뜹니다. 해법은 robots.txt 차단을 풀고 그 페이지에 noindex를 넣어, 구글이 "빼달라"는 신호를 실제로 읽게 하는 것입니다.

방향 2 — 남겨야 하는데 사라짐. 이쪽이 더 아픕니다. 홈페이지를 새로 만들 때 개발 단계에서 사이트 전체에 걸어 둔 noindex나 robots.txt의 Disallow: /가 오픈 후에도 남아, 진료·의료진 페이지까지 통째로 검색에서 빠지는 경우입니다. "우리 병원이 검색에 아예 안 나온다"는 증상 뒤에 이 설정이 숨어 있는 일이 드물지 않습니다. 이 진단은 서치 콘솔 색인 생성 리포트 편에서 "NOINDEX로 표시됨", "robots.txt에 의해 차단됨" 상태로 확인할 수 있습니다.

그래서 이 작업은 "빼는 것"만큼 "실수로 빼지 않는 것"이 중요합니다. 한 줄 설정이 사이트 전체 노출을 좌우하기 때문입니다. 구글이 페이지를 읽을 수 있는 형태인지 자체를 점검하는 관점은 구글이 우리 병원을 '빈 페이지'로 볼 수 있다 편과도 이어집니다.

사이트맵과도 신호를 맞춰야 합니다

한 가지 더. noindex나 robots.txt로 막기로 한 페이지를 사이트맵에는 그대로 남겨 두는 경우가 많습니다. 사이트맵은 "이 페이지들을 검색에 넣어주세요"라고 건네는 목록인데, 거기에 "빼달라고 막아 둔 페이지"를 넣으면 서로 어긋난 신호가 됩니다. 검색에서 빼기로 했다면 사이트맵에서도 빼는 것이 맞습니다. 사이트맵을 어떻게 구성하는지는 병원 홈페이지 사이트맵 정리법 편에서 다뤘습니다.

자사 운영에서도 같은 원칙을 씁니다

CodeShift는 지역 의료기관·증상·진료비 정보를 다루는 자사 운영 정보 사이트 5곳, 합쳐 2,300여 페이지를 운영합니다(2026-08 기준). 페이지가 이 정도 규모가 되면, "무엇을 검색에 내보내고 무엇을 뺄지"를 페이지마다 손으로 판단하기 어렵습니다. 그래서 검색에 노출할 정보 페이지와, 검색에 뜰 필요가 없는 내부·중복 페이지를 처음부터 구분해 색인 신호를 설계해 둡니다. 검색에서 빼는 일은 사후에 급하게 막는 작업이 아니라, 페이지를 만들 때 정해 두는 설계의 문제라는 걸 운영에서 반복해 확인합니다.

솔직하게 짚어 둘 것

  • noindex를 넣는다고 페이지가 즉시 검색에서 사라지지는 않습니다. 구글이 그 페이지를 다시 크롤링해 태그를 읽어야 반영되며, 시점은 구글이 정합니다
  • robots.txt 차단은 검색 제거 도구가 아닙니다. 급히 빼야 하는 민감 페이지라면 서치 콘솔의 삭제 도구나 접근 제한(비밀번호)까지 함께 검토해야 합니다
  • 이 작업은 노출을 '정리'하는 위생 작업이지, 순위를 올리거나 문의를 늘리는 기법이 아닙니다. 검색에서 무엇을 빼든 순위·예약·문의 증가를 약속할 수는 없습니다

오늘 바로 점검할 것

지금 우리 병원 사이트에서 바로 확인할 수 있는 것들입니다.

  • 검색에서 빼고 싶은 페이지를 목록으로 적었는가 (종료 이벤트·완료·관리자·중복 등)
  • 그 페이지를 robots.txt로만 막아 두고 "사라졌다"고 믿고 있지는 않은가 — site:우리병원도메인 검색으로 아직 뜨는지 확인
  • 검색에서 확실히 빼야 할 페이지에 noindex가 들어 있고, 동시에 그 페이지가 robots.txt로 막혀 있지는 않은가(둘을 같이 걸면 noindex가 안 읽힘)
  • 반대로 검색에 꼭 나와야 할 진료·의료진·오시는 길 페이지가 noindex나 robots.txt로 실수로 막혀 있지는 않은가
  • 사이트맵에 noindex·robots 차단 페이지가 섞여 있지 않은가

우리 병원 사이트의 색인 상태가 어디서부터 꼬였는지 판단이 어렵다면, 검색에 어떻게 읽히는지부터 함께 점검해 드립니다. 문의하기로 현재 상태를 알려주세요.

다음 단계

검색 노출을 통제하는 일은 몇 단계로 이어집니다.

  1. 검색에 나오면 안 되는 페이지를 noindex로 정리 (이 글)
  2. 실제로 색인에서 빠졌는지 확인 — 서치 콘솔 색인 생성 리포트
  3. 중복 주소는 빼는 대신 대표로 통합 — 구글이 대표 URL을 고르는 법
  4. 검색에 남길 페이지 목록을 사이트맵으로 정리 — 병원 홈페이지 사이트맵

검색에서 페이지를 빼는 일은 화려하지 않습니다. 하지만 어떤 도구가 어떤 단계를 통제하는지 한 번 정리해 두면, "막았는데 왜 아직 떠 있지" 같은 혼란과 "왜 진료 페이지까지 사라졌지" 같은 사고를 함께 막을 수 있습니다.


구글 공식 문서: robots.txt 소개, noindex로 색인 생성 차단 (Google Search Central)

Newsletter / 구독

코드쉬프트 병원 AI 노트

매주 한 통. 병원 원장을 위한 AI 검색 시대 이야기.

소식 받기 문의