top
logo
article블로그
custom icon기능 개요
language-switch

모범 사례: robots.txt 파일에 사용자 에이전트 지시문을 올바르게 작성하는 방법

모범 사례: robots.txt 파일에 사용자 에이전트 지시문을 올바르게 작성하는 방법AlanidateTime2025-12-23 06:44
iconiconiconiconicon

많은 웹사이트들은 단지 스크래퍼를 차단하려는 의도만 있지만, 결과적으로 검색 엔진 스파이더까지 차단하는 경우가 있습니다.

또한, 사람들이 robots.txt에 매우 전문적으로 보이는 User-Agent를 많이 작성했지만 실제로는 작동하지 않고, 서버는 여전히 과도하게 크롤링되는 경우도 보았습니다.

다음으로, 실무적인 웹마스터의 관점에서, robots.txt의 User-Agent를 실제로 어떻게 작성해야 문제를 최소화하고 오류를 방지할 수 있는지에 대해 이야기해보겠습니다.

ScreenShot_2025-12-08_183126_524.png

1. robots.txt의 User-Agent는 정확히 무엇을 하는가?

User-Agent는 검색 엔진이나 크롤러에게 "이 규칙은 누구를 위한 것인지"를 알리는 방법입니다.

예를 들어, 가장 일반적인 경우: User-agent: * Disallow: /admin/ 

여기서 *는 검색 엔진 봇, 스크래핑 도구 및 특정 자동화 스크립트를 포함한 모든 크롤러를 나타냅니다.

그리고 이렇게 작성하면: User-agent: Googlebot Disallow: /test/ 

이는 Google의 크롤러만 제한되고, 다른 크롤러에는 영향을 주지 않습니다.

따라서 User-Agent가 올바르게 작성되었는지가 robots.txt 규칙이 실제로 적용되는지를 직접 결정합니다.

2. User-Agent 분석 : 이름만 보지 말고, "진짜 정체"를 확인하라

많은 초보자들은 크롤러 이름만으로 정체를 판단하는 실수를 합니다. 예를 들어 요청 헤더에서 Googlebot을 보고 그것이 반드시 Google의 크롤러라고 가정합니다.

실제로는 오늘날 너무 많은 도구가 User-Agent를 스푸핑할 수 있으므로, 문자열만으로 판단하는 것은 신뢰할 수 없습니다.

이때 User-Agent 분석이 중요합니다:

•  공식 UA 사양을 준수하는지

•  적절한 시스템 정보를 포함하는지

•  IP 범위와 일치하는지

•  행동이 일반적인 검색 엔진 크롤러와 유사한지

이 때문에 일부 웹마스터는 Googlebot을 robots.txt에 허용해도 서버가 비정상적인 크롤링으로 압도될 수 있습니다.

3. robots.txt에서 User-Agent 규칙을 올바르게 작성하는 권장 방법

1️⃣ 와일드카드 규칙은 신중히 사용

User-agent: * Disallow: 

이 형식은 괜찮지만, 진정으로 어떤 크롤러도 제한하지 않을 경우에만 사용해야 합니다.

관리자 패널, 테스트 디렉토리, 중복 콘텐츠 페이지가 있는 경우 개별 규칙을 추가하는 것이 좋습니다.

2️⃣ 주요 검색 엔진은 개별적으로 선언

더 안전한 접근 방식은 다음과 같습니다:

User-agent: Googlebot Allow: / User-agent: Bingbot Allow: / User-agent: Baiduspider Allow: /  

이렇게 할 때의 장점은 다음과 같습니다:

•  가독성 향상

•  문제 해결이 더 쉬움

•  와일드카드 규칙으로 인한 실수 방지

3️⃣ 존재하지 않는 User-Agent는 작성하지 마라

일부 온라인 튜토리얼에서는 "고급처럼 보이는" UA를 차단하라고 가르치지만, 실제로는 존재하지 않는 경우가 많습니다. robots.txt는 오류를 발생시키지 않지만, 이러한 규칙은 사실상 무용지물입니다.

4. 브라우저 지문 인식: robots.txt로 제어할 수 없는 영역

현대의 많은 스크래퍼와 자동화 도구는 robots.txt를 전혀 신경 쓰지 않습니다. 그들이 실제로 주목하는 것은 다음과 같습니다:

•  브라우저 지문 인식

•  행동 패턴

•  요청 빈도

•  JavaScript 실행 능력

즉, User-Agent가 완벽하게 작성되어 있어도, 기본적인 브라우저 지문 인식 없이는 공격자가 "완전히 정상처럼 보이는" 크롤러를 시뮬레이션할 수 있습니다.

이것이 많은 사이트가 지문 식별과 행동 분석을 결합하여 접근 제어를 수행하는 이유입니다.

5. User-Agent 파서가 신뢰할 수 있는지 어떻게 확인할 수 있을까?

ToDetect 지문 조회 도구를 사용하면 다음을 확인할 수 있습니다:

•  UA가 많은 도구에서 재사용되는지

•  비정상적인 지문 조합이 있는지

•  일반적인 브라우저 환경과 일치하는지

•  명백한 자동화 특성이 있는지

이 단계는 "진짜 크롤러와 가짜 크롤러"를 구별하는 데 매우 유용하며, 특히 중대형 사이트에서 중요합니다.

6. 쉽게 놓치는 세부 사항

•  robots.txt는 대소문자를 구분합니다. User-Agent 이름은 공식 대문자 표기법을 따라야 합니다.

•  같은 User-Agent 아래에서 상충되는 규칙을 작성하지 마십시오.

•  robots.txt를 수정한 후 캐시를 지우고 다시 테스트하세요.

•  검색 엔진은 robots 규칙을 지연 적용하므로 즉시 효과가 나타나지 않습니다.

이러한 세부 사항을 무시하면 많은 사람들이 "robots.txt가 작동하지 않는다"고 잘못 믿게 됩니다.

요약

만약 귀하의 웹사이트가 이미 과도하게 스크래핑되거나 트래픽이 폭주하고 있다면, 단일 User-Agent 규칙만으로 "모든 것을 차단"할 수 있다고 기대하지 마십시오.

robots.txt의 User-Agent 항목은 실제 존재하고 표준화되어 있어야 합니다. User-Agent만 의존하지 말고, 분석과 행동 분석을 결합하는 것이 훨씬 더 신뢰할 수 있습니다.

스크래핑 방지는 robots.txt에서 시작하지만, ToDetect의 브라우저 지문 인식이 진정한 핵심입니다. 사이트가 크다면, 지문 인식과 행동 분석으로 한 단계 더 나아가는 것이 좋습니다.