robots.txt 설정 방법: 차단 실수 없이 적용하는 법

핵심 요약
  • robots.txt는 크롤러의 수집 경로를 안내하는 파일입니다.
  • 루트 경로와 정확한 파일명으로 공개해야 합니다.
  • 관리자·검색·임시 경로만 최소 범위로 제한합니다.
  • 배포 뒤 URL 테스트와 검색 도구 확인이 필요합니다.

robots.txt 설정은 도메인 최상위 경로에 robots.txt 파일을 두고, 공개할 페이지는 기본 허용하며 관리·내부 검색·임시 URL처럼 검색 결과에 필요 없는 경로만 제한하는 방식이 가장 안전합니다. 특히 Disallow: /는 모든 크롤러의 사이트 전체 수집을 막을 수 있으므로 운영 사이트에서는 넣기 전에 반드시 목적을 확인해야 합니다.

robots.txt는 검색엔진 크롤러에게 어느 URL을 방문해도 되는지 알려주는 텍스트 규칙입니다. 검색 노출을 보장하거나 비공개 정보를 보호하는 보안 장치는 아니지만, 불필요한 크롤링을 줄이고 사이트맵 위치를 전달하는 SEO 기본 설정으로 활용됩니다.

robots.txt가 하는 일과 하지 못하는 일

robots.txt가 검색엔진 크롤러의 접근은 제어하지만 비공개 보안 기능은 제공하지 않는다는 차이를 표현한 이미지

크롤링 제어와 색인 삭제는 다릅니다

크롤링은 검색 로봇이 페이지를 방문해 내용을 가져가는 과정이고, 색인은 가져간 정보를 검색 결과 데이터베이스에 반영하는 과정입니다. robots.txt는 주로 방문 경로를 제어합니다. 이미 다른 사이트의 링크나 과거 수집 정보로 URL이 알려진 경우에는 내용을 읽지 못해도 URL 자체가 검색 결과에 일부 나타날 여지가 있습니다. 검색 결과에서 반드시 제외해야 하는 공개 페이지라면 robots.txt만 의지하지 말고 페이지의 noindex 설정, 로그인 보호 또는 서버 접근 제어를 목적에 맞게 검토해야 합니다.

비공개 자료를 숨기는 파일은 아닙니다

robots.txt는 누구나 https://example.com/robots.txt로 열어볼 수 있습니다. 따라서 /admin/, /backup/ 같은 경로를 적는 행위는 오히려 경로명을 노출합니다. 인증 없이 접근 가능한 개인정보 파일, 백업 파일, 설정 파일을 robots.txt로만 막는 것은 위험합니다. 이런 파일은 웹 공개 경로 밖으로 옮기고, 인증·권한·서버 규칙으로 차단해야 합니다.

가장 중요한 기준: robots.txt는 보안 설정이 아니라 크롤링 안내 파일입니다. 민감한 URL은 인증과 서버 접근 제어로 보호하고, 검색 제외가 목적이면 noindex 적용 여부를 별도로 확인하세요.

robots.txt 설정 전 결정할 범위

대부분의 일반 웹사이트에 맞는 기본 원칙

상품·서비스 소개, 블로그 글, 카테고리처럼 검색 유입이 필요한 공개 페이지는 막지 않는 편이 좋습니다. 반면 관리자 화면, 장바구니와 결제 중간 단계, 내부 검색 결과, 미리보기·테스트 페이지, URL 매개변수가 과도하게 생성되는 화면은 수집 대상인지 검토할 만합니다. 다만 차단할 경로가 실제 검색 유입이나 공유 기능에 사용되는지 로그와 사이트 구조를 먼저 확인해야 합니다.

차단 후보를 기능별로 구분하기

경로 유형 robots.txt 권장 추가 조치
공개 콘텐츠·상품 페이지 허용 사이트맵 포함 여부 확인
관리자·회원 전용 화면 보조적으로 제한 가능 로그인·권한 제어 필수
내부 검색 결과 제한 검토 중복 URL 생성 점검
개발·스테이징 사이트 전체 제한 가능 외부 접근 자체도 차단

특히 운영 사이트와 스테이징 사이트가 같은 콘텐츠를 제공한다면, 스테이징은 robots.txt만으로 공개를 막았다고 판단하지 말고 IP 제한 또는 인증을 함께 적용해야 합니다.

robots.txt 설정 방법: 실제 배포 4단계

robots.txt 내용을 작성하고 파일로 저장한 뒤 서버에 업로드해 정상 반영을 확인하는 실제 배포 4단계를 표현한 이미지

1단계: 도메인과 차단할 URL을 먼저 확인합니다

브라우저에서 실제 서비스 주소가 https://www.example.com/인지 https://example.com/인지 확인합니다. 서브도메인은 별도 호스트로 취급될 수 있으므로, www와 비www를 모두 운영한다면 각 호스트의 robots.txt 제공 상태를 점검합니다. 이어서 차단 후보 URL을 직접 열어 보고, 디렉터리 단위인지 특정 파일 단위인지 기록합니다.

  1. 검색 유입이 필요한 대표 콘텐츠 URL을 3개 이상 고릅니다.
  2. 관리·내부 검색·미리보기 등 제한 후보 URL을 고릅니다.
  3. 제한 후보가 로그인이나 서버 규칙으로 이미 보호되는지 확인합니다.
  4. 리디렉션되는 주소가 있다면 최종 도메인 기준으로 파일을 배포합니다.

2단계: 최소 규칙으로 robots.txt를 작성합니다

처음에는 모든 크롤러를 뜻하는 User-agent: * 그룹 하나로 시작하는 것이 관리하기 쉽습니다. 공개 사이트에서 특별히 막을 경로가 없다면 Disallow:를 비워 두거나 파일 없이 운영할 수도 있습니다. 다음 예시는 관리자와 내부 검색 경로만 제한하고 사이트맵 위치를 알리는 일반적인 형태입니다.

User-agent: *
Disallow: /admin/
Disallow: /search/
Disallow: /preview/

Sitemap: https://example.com/sitemap.xml

User-agent는 규칙을 적용할 로봇 이름이고, 별표는 모든 로봇을 뜻합니다. Disallow는 수집하지 않기를 요청하는 URL 경로입니다. Sitemap은 사이트맵 XML 파일의 전체 URL을 알려주는 지시문입니다. 사이트맵이 실제로 존재하고 정상 응답하는 경우에만 적으세요.

3단계: 문법의 범위와 우선순위를 검토합니다

경로 끝의 슬래시는 의미 차이를 만들 수 있습니다. Disallow: /admin/은 일반적으로 admin 디렉터리 아래를 대상으로 하고, Disallow: /admin은 admin으로 시작하는 더 넓은 경로와 맞을 수 있어 의도보다 범위가 커질 수 있습니다. 필요한 경우 허용 예외는 Allow로 구체적으로 작성합니다.

User-agent: *
Disallow: /assets/
Allow: /assets/public-guide.pdf

와일드카드 *와 끝 일치를 뜻하는 $는 일부 주요 검색엔진이 지원하는 확장 문법이지만, 로봇마다 해석이 다를 수 있습니다. 예를 들어 Disallow: /*?sort= 같은 규칙은 매개변수 URL을 광범위하게 막을 위험이 있습니다. URL 패턴이 복잡하면 robots.txt를 늘리기보다 정규 URL(canonical), 페이지네이션, 필터 URL 설계를 함께 점검하는 편이 안정적입니다.

4단계: 최상위 경로에 업로드하고 응답을 확인합니다

파일명은 반드시 소문자 robots.txt여야 하며, 도메인 최상위 경로에 배포합니다. 예를 들어 https://example.com/robots.txt에서 열려야 합니다. /public/robots.txt/blog/robots.txt에만 두면 기대한 방식으로 발견되지 않을 수 있습니다. 배포 뒤에는 브라우저 또는 명령줄에서 HTTP 상태가 정상인지, HTML 오류 페이지가 아니라 순수 텍스트 규칙이 반환되는지 확인합니다.

  1. https://내도메인/robots.txt를 직접 엽니다.
  2. 파일명, 줄바꿈, 차단 경로의 오탈자를 확인합니다.
  3. 대표 공개 URL과 제한 URL을 각각 테스트합니다.
  4. 사이트맵 URL을 열어 XML이 정상 표시되는지 확인합니다.

자주 쓰는 robots.txt 예시와 해석

전체 사이트를 공개하는 가장 단순한 예시

User-agent: *
Disallow:

Sitemap: https://example.com/sitemap.xml

Disallow는 모든 경로를 차단하지 않는다는 의미입니다. 콘텐츠 사이트가 별도 제한 경로 없이 출발할 때 적용하기 쉽습니다. 단, 관리자 페이지를 공개 URL에서 접근 가능하게 둔 상태라면 robots.txt가 아니라 인증 설정부터 해결해야 합니다.

운영 사이트에서 특히 피해야 할 예시

User-agent: *
Disallow: /

이 규칙은 모든 크롤러에게 사이트 전체 경로를 수집하지 말라고 요청합니다. 신규 사이트를 준비하는 동안 임시로 사용했거나 개발자가 배포 전 넣어 둔 상태가 운영 환경에 남는 일이 흔합니다. 공개 검색 유입이 목적이라면 가장 먼저 제거 또는 수정할 후보입니다.

특정 크롤러만 별도로 다루는 경우

특정 크롤러에만 규칙을 적용하려면 해당 크롤러의 공식 문서에서 정확한 사용자 에이전트 이름과 지원 문법을 확인한 뒤 별도 그룹을 작성합니다. 모든 로봇에 공통 적용할 규칙과 특정 로봇용 규칙을 섞으면 의도 파악이 어려워지므로, 필요성이 분명할 때만 분리하세요. robots.txt 표준과 해석 원칙은 Google Search Central의 robots.txt 소개 문서에서 추가로 확인할 수 있습니다.

배포 후 테스트와 문제 해결 체크리스트

robots.txt 배포 후 정상 작동 여부를 테스트하고 차단 경로와 문제를 점검하는 체크리스트를 표현한 이미지

검색 노출이 갑자기 줄었을 때

먼저 robots.txt 전체에서 Disallow: / 또는 핵심 콘텐츠 경로를 포함하는 넓은 규칙이 있는지 찾습니다. 다음으로 파일이 올바른 도메인에서 200 상태로 제공되는지, CDN 캐시가 이전 파일을 유지하지 않는지, 사이트맵 URL이 실제 주소와 같은 호스트·프로토콜을 쓰는지 점검합니다. 검색엔진 도구의 URL 검사 기능에서는 robots.txt뿐 아니라 noindex, 로그인 요구, 서버 오류도 함께 확인해야 원인을 좁힐 수 있습니다.

수정 직후 반영되지 않을 때

robots.txt는 검색 로봇이 다시 가져갈 때 반영되므로, 수정 직후 모든 검색 결과가 바뀐다고 보기는 어렵습니다. 파일 응답이 새 내용인지 먼저 검증하고, 검색엔진 도구에서 다시 가져오기 또는 URL 검사 기능을 제공한다면 활용합니다. 단순히 수집을 차단한 것만으로 기존 색인이 즉시 삭제되는 것은 아니므로, 삭제 목적이라면 noindex와 접근 가능 상태의 조합을 별도로 설계해야 합니다.

배포 전 최종 점검: 운영 도메인의 /robots.txt가 200으로 열리고, 공개 콘텐츠는 허용되며, Disallow: /가 의도 없이 남아 있지 않은지 확인하세요.

  • 파일이 최상위 경로에 있는지 확인합니다.
  • 운영·스테이징 도메인의 규칙을 혼동하지 않았는지 확인합니다.
  • 차단 경로가 실제 공개 콘텐츠의 상위 경로가 아닌지 확인합니다.
  • 민감 정보 보호를 robots.txt에만 의존하지 않았는지 확인합니다.
  • 사이트맵 주소가 실제 응답하는 URL인지 확인합니다.

robots.txt와 사이트맵을 함께 관리하는 기준

서로 역할이 반대가 아니라 보완적입니다

robots.txt는 크롤러가 피해야 할 범위를 알리고, 사이트맵은 발견시키고 싶은 대표 URL 목록을 전달합니다. 따라서 같은 URL을 robots.txt로 막으면서 사이트맵에 넣으면 신호가 충돌해 운영자가 판단하기 어려워집니다. 사이트맵에는 색인 대상의 정규 URL만 담고, robots.txt에서는 크롤링할 이유가 없는 경로만 최소한으로 제한하는 구조가 좋습니다.

CMS와 프레임워크의 자동 생성도 확인합니다

워드프레스, 정적 사이트 생성기, 쇼핑몰 솔루션, 배포 플랫폼은 robots.txt 또는 사이트맵을 자동 생성할 수 있습니다. 직접 파일을 올렸는데도 내용이 달라 보인다면 빌드 결과물, 플러그인, 서버 리라이트 규칙, CDN 설정을 순서대로 확인하세요. 자동 생성 기능을 사용할 때도 실제 공개 URL을 열어 최종 출력물을 검증하는 과정은 생략하면 안 됩니다.

자주 묻는 질문

Q. robots.txt 파일이 꼭 있어야 하나요?

반드시 필요한 것은 아닙니다. 차단할 경로가 없으면 파일 없이도 크롤러가 공개 페이지를 수집할 수 있습니다. 다만 사이트맵 위치를 알리거나 불필요한 경로를 제한해야 한다면 명시적으로 작성하는 편이 관리에 도움이 됩니다.

Q. robots.txt에 차단하면 검색 결과에서 바로 사라지나요?

아닙니다. robots.txt는 크롤링 제어 중심의 파일이므로 기존 색인이나 외부 링크로 알려진 URL의 검색 노출을 즉시 제거한다고 볼 수 없습니다. 검색 제외가 목적이면 noindex 설정과 접근 가능 여부를 함께 검토해야 합니다.

Q. 관리자 페이지를 Disallow로 막으면 안전한가요?

안전하다고 볼 수 없습니다. robots.txt는 공개 파일이고 모든 봇이 규칙을 따르는 것도 아닙니다. 관리자 페이지는 로그인 인증, 권한 관리, 서버 수준의 접근 제한으로 보호해야 합니다.

Q. robots.txt를 수정한 뒤 언제 반영되나요?

검색 로봇이 파일을 다시 가져오는 시점에 따라 달라집니다. 먼저 운영 도메인의 robots.txt가 새 내용으로 정상 응답하는지 확인하고, 사용하는 검색엔진 도구에서 제공하는 검사 또는 다시 가져오기 기능을 활용하세요.

참고자료

관련 글 보기