T

Text Machine

강력한 텍스트 도구를 브라우저에서

Robots.txt 생성기

웹사이트 URL (선택사항)
규칙

1

User-agent

지시문

경로

사이트맵 URL (한 줄에 하나씩)

크롤링 지연 (초)

Robots.txt 생성기 사용 방법

  1. 1

    크롤 규칙 추가

    Add Rule을 클릭해 User-agent를 설정하고 Allow 또는 Disallow를 선택한 뒤, 각 규칙이 적용될 경로를 입력하세요.

  2. 2

    선택적 지시문 설정

    사이트맵 URL(한 줄에 하나)과, 검색 엔진의 크롤 방식을 조절하는 선택적 crawl-delay(초 단위)를 추가하세요.

  3. 3

    파일 생성

    Generate robots.txt를 클릭해 규칙과 지시문으로 올바른 형식의 파일을 만드세요.

  4. 4

    복사 또는 다운로드

    Copy to Clipboard 또는 Download robots.txt를 사용한 뒤, 파일을 도메인 루트(yoursite.com/robots.txt)에 업로드하세요.

robots.txt의 실제 작동 원리: 실용 가이드

robots.txt란 무엇이며 어디에 두어야 하는가

robots.txt는 로봇 배제 프로토콜(Robots Exclusion Protocol)을 구현하는 일반 텍스트 파일로, 웹 크롤러에게 사이트의 어느 부분을 요청하지 말아야 하는지 알려 주는 자발적 표준입니다. 이 파일은 단 하나의 정확한 위치, 즉 도메인 루트인 yoursite.com/robots.txt에서 제공되어야 합니다. yoursite.com/blog/robots.txt처럼 하위 디렉터리에 둔 robots.txt는 그냥 무시됩니다. 각 서브도메인과 각 프로토콜은 저마다 적용 범위가 따로이므로, blog.yoursite.com은 yoursite.com의 파일과는 별개로 자체 파일이 필요합니다.

준수 여부는 자율에 맡겨집니다. Googlebot, Bingbot을 비롯한 주요 크롤러는 robots.txt를 따르지만, 악의적인 스크레이퍼와 많은 AI 봇은 그렇지 않을 수 있습니다. robots.txt를 보안 수단으로 여겨서는 절대 안 됩니다. 이는 예의를 갖춘 크롤러를 위한 매너 장치일 뿐, 비공개 콘텐츠를 잠그는 자물쇠가 아닙니다. 정말로 민감한 내용에는 Disallow 한 줄이 아니라 인증이 필요합니다.

실제로 사용하는 네 가지 지시문

robots.txt는 여러 그룹으로 구성되며, 각 그룹은 규칙이 적용될 크롤러를 지정하는 하나 이상의 User-agent 줄로 시작한 뒤 Allow와 Disallow 규칙이 이어집니다. User-agent: *는 더 구체적인 그룹이 없는 모든 크롤러를 대상으로 합니다. Disallow: /admin/은 경로를 차단하고, 빈 Disallow(뒤에 아무것도 없는 Disallow:)는 전체 허용을 의미합니다. Allow는 더 넓은 차단 안에서 예외를 만들 때 사용하는데, 예를 들어 차단된 폴더 안의 파일 하나를 허용하는 식입니다.

Sitemap 지시문은 특별합니다. 어떤 User-agent 그룹에도 종속되지 않으며 파일 어디에나 올 수 있는데, 관례적으로는 맨 위나 맨 아래에 둡니다. https://yoursite.com/sitemap.xml처럼 XML 사이트맵의 전체 절대 URL을 가리켜야 하며, 사이트맵이 여러 개라면 여러 줄로 나열할 수 있습니다. 이는 검색 엔진이 모든 URL을 발견하도록 돕는 가장 비용이 적게 드는 방법입니다.

결정적 차이: 크롤링과 색인 생성

이것이 robots.txt에서 가장 많이 오해받는 단 하나의 지점이며, 잘못 이해하면 실제로 피해를 입습니다. robots.txt는 색인 생성이 아니라 크롤링을 제어합니다. URL을 Disallow하면 크롤러가 그 내용을 가져오지 못하지만, 검색 결과에서 URL이 제거되지는 않습니다. 다른 페이지가 차단된 URL을 링크하면 Google은 여전히 그것을 맨 링크 형태로 색인할 수 있으며, 페이지가 robots.txt로 차단되어 설명을 제공할 수 없다는 도움 안 되는 안내와 함께 표시되는 경우가 많습니다.

더 나쁜 점은, robots.txt로 페이지를 차단하면 Google이 그 페이지의 noindex 태그를 영영 보지 못한다는 것입니다. 태그를 읽으려면 페이지를 크롤링해야 하는데 그럴 수 없기 때문입니다. 따라서 페이지를 검색에서 제거하는 올바른 방법은 많은 사람이 짐작하는 것과 정반대입니다. 페이지를 크롤링 가능한 상태로 두고 noindex 메타 태그나 X-Robots-Tag 헤더를 추가하는 것입니다. robots.txt로 차단하는 것은 페이지를 색인에서 숨기려는 목적이 아니라 크롤 예산을 아끼려는 목적일 때만 하세요.

와일드카드와 패턴 매칭

최신 크롤러는 두 가지 패턴 문자를 지원합니다. 별표(*)는 임의의 문자열과 일치하고, 달러 기호($)는 일치를 URL 끝에 고정합니다. 그래서 Disallow: /*.pdf$는 .pdf로 끝나는 모든 URL을 차단하고, Disallow: /*?sort=는 sort 쿼리 매개변수가 들어간 모든 URL을 차단하는데, 이는 패싯 내비게이션으로 생기는 중복을 크롤링에서 배제하는 흔한 방법입니다. 경로는 접두사로 매칭되므로 Disallow: /private는 /private, /private/, /private-files를 모두 차단합니다.

패턴은 강력하지만 지나치게 적용하기도 쉽습니다. 사소하지 않은 규칙은 배포하기 전에 반드시 테스트하세요. 잘못 놓인 별표 하나가 의도보다 훨씬 많은 것을 차단할 수 있습니다. Google Search Console에는 특정 URL이 규칙에 의해 허용되는지 차단되는지 보여 주는 robots.txt 테스터가 있으니, 가장 단순한 파일이 아니라면 사용해 볼 만합니다.

Crawl-delay와 크롤 속도

Crawl-delay 지시문은 크롤러에게 연속된 요청 사이에 몇 초를 기다리라고 요청하며, 이는 작거나 취약한 서버의 부하를 덜어 줄 수 있습니다. 문제는 지원이 일관적이지 않다는 점입니다. Bing과 Yandex는 Crawl-delay를 따르지만 Google은 이를 완전히 무시합니다. 대신 Google은 크롤 속도를 자동으로 결정하며, 예전에는 Search Console에서 수동 조정을 제공했습니다. 특히 Googlebot이 서버를 과도하게 두드리는 것이 걱정이라면 Crawl-delay는 아무 소용이 없습니다. 그 대신 서버 측 속도 제한이나 Search Console 설정이 필요합니다.

대부분의 사이트는 크롤 지연을 아예 설정하지 않는 편이 좋습니다. 크롤러를 늦추면 새 콘텐츠와 갱신된 콘텐츠가 발견되고 색인되는 속도도 함께 느려집니다. 정말로 용량 문제가 있을 때만 사용하고, 값은 작게 유지하세요.

SEO를 조용히 망치는 흔한 실수

가장 치명적인 실수는 User-agent: * 아래에 Disallow: /가 들어 있는 스테이징 파일을 그대로 배포하는 것입니다. 이 한 줄이 모든 크롤러로부터 사이트 전체를 차단하며, 사이트가 공개될 때 개발용 robots.txt를 아무도 교체하지 않아 흔하게 일어납니다. 출시나 이전 작업 이후에는 운영 환경의 robots.txt에 전체 Disallow가 들어 있지 않은지 가장 먼저 확인해야 합니다.

두 번째 고전적인 실수는 CSS와 JavaScript 디렉터리를 차단하는 것입니다. Google은 브라우저처럼 페이지를 렌더링하는데, 스타일시트와 스크립트를 가져오지 못하면 깨지고 스타일이 없는 페이지를 보고 모바일 경험이 나쁘거나 콘텐츠가 빈약하다고 판단할 수 있습니다. 크롤러가 자산에 접근하도록 두세요. 그 밖에 자주 저지르는 실수로는 robots.txt로 페이지를 색인에서 빼려 하는 것(대신 noindex를 사용하세요), 파일의 경로가 대소문자를 구분한다는 사실을 잊는 것, 그리고 파일을 도메인 루트가 아닌 다른 곳에 두는 것이 있습니다.

대부분의 웹사이트에 알맞은 기본 설정

많은 사이트에는 의도적으로 관대한 robots.txt가 가장 잘 맞습니다. 즉, 모든 것이 크롤링되도록 빈 Disallow를 둔 User-agent: * 그룹 하나에, XML 사이트맵을 가리키는 Sitemap 줄을 더하는 것입니다. 이렇게 열린 기준선에서 출발해, 내부 검색 결과 페이지, 관리자 영역, 장바구니와 결제 URL, 매개변수가 붙은 중복 URL처럼 정말로 크롤링되지 말아야 하는 것에만 좁은 Disallow 규칙을 추가합니다.

과도하게 손대고 싶은 유혹을 참으세요. 완전히 이해하고 있는 짧고 올바른 robots.txt가, 설명할 수 없는 규칙이 담긴 채 다른 곳에서 복사해 온 긴 파일보다 훨씬 안전합니다. 파일을 생성한 뒤에는 브라우저에서 직접 불러와 루트에서 일반 텍스트로 제공되는지 확인하고, 신뢰하기 전에 테스터에서 중요한 경로들을 검증하세요.

자주 묻는 질문

robots.txt 파일은 무엇을 위한 것인가요?
robots.txt 파일은 검색 엔진 크롤러에게 사이트의 어느 부분에 접근해도 되는지 알려 줍니다. User-agent, Allow, Disallow 지시문을 사용하며, 봇이 크롤링 전에 읽도록 도메인 루트에 배치됩니다.
Allow와 Disallow 규칙은 어떻게 작동하나요?
Disallow는 크롤러가 경로에 접근하지 못하게 막고, Allow는 명시적으로 한 경로를 허용하는데, 차단된 디렉터리 안의 하위 폴더를 여는 데 유용합니다. 모든 봇을 대상으로 하는 User-agent로 전체를 지정하거나, Googlebot 같은 특정 크롤러에 대해 별도 규칙을 작성할 수 있습니다.
crawl-delay는 무엇을 하나요?
crawl-delay는 크롤러가 요청 사이에 몇 초를 기다려야 하는지 제안해 서버 부하를 줄일 수 있습니다. 다만 모든 검색 엔진이 이를 따르지는 않습니다. 예를 들어 Google은 crawl-delay를 무시하고 Search Console의 크롤 속도 설정을 선호합니다.
왜 사이트맵 줄을 추가하나요?
Sitemap 지시문을 포함하면 크롤러가 XML 사이트맵을 가리켜 페이지를 더 효율적으로 발견할 수 있습니다. 도구는 여러 사이트맵 URL을 한 줄에 하나씩 나열하게 해 주고 이를 파일에 작성해 줍니다.
robots.txt가 페이지를 Google에서 제외함을 보장하나요?
아니요. Disallow는 크롤링을 막지만, 다른 페이지가 링크하면 차단된 URL도 여전히 색인될 수 있습니다. 페이지를 검색 결과에서 빼려면 robots.txt에만 의존하지 말고, 크롤링이 가능한 페이지에 noindex 메타 태그나 헤더를 사용하세요.

관련 도구

이런 편리한 도구도 함께 사용해 보세요

메타 태그 생성기

URL 리다이렉트 체인 검사기

Open Graph Previewer

HTML 엔티티 인코더/디코더

HTTP 헤더 뷰어

사이트맵 URL 추출기