홈 인사이트 GEO AI 크롤러 요청이 몰려 서버가 느려질 때 무엇으로 줄이나요?
GEO

AI 크롤러 요청이 몰려 서버가 느려질 때 무엇으로 줄이나요?

싹 SAG 편집팀 · 2026년 10월 1일 발행

검색봇과 AI 수집기의 요청량을 줄이는 수단은 표준이 아니라 회사별 문서에 달려 있어, 같은 robots.txt 줄이 한쪽에서는 동작하고 다른 쪽에서는 무시됩니다. Google 크롤러는 Crawl-delay를 지원하지 않고 짧은 기간의 오류 응답만 안내하며, Anthropic 봇은 비표준 Crawl-delay 확장을 지원한다고 문서에 적고 있습니다. 먼저 접근 로그에서 사용자 에이전트별 시간당 요청 수를 세어 어느 봇이 얼마나 오는지 확인하십시오.

어느 봇이 몇 번 왔는지 줄 단위로 먼저 셉니다

수단을 고르기 전에 서버 접근 로그(Access Log)에서 사용자 에이전트(User Agent)별 요청 수를 시간 단위로 셉니다. 전체 요청량만 보면 사람이 만든 트래픽과 수집기가 만든 트래픽을 구분할 수 없고, 어느 수단이 통하는 봇인지도 정할 수 없습니다.

한 줄에 최소 네 가지가 남아 있어야 합니다. 사용자 에이전트 문자열, 요청 경로, 응답 상태 코드, 요청 시각입니다. 경로가 기록되지 않는 설정이면 어느 기능이 요청을 만드는지 끝까지 알 수 없으므로 경로 기록을 먼저 켭니다.

사용자 에이전트 문자열은 누구나 위장할 수 있습니다. 실제 그 회사의 요청인지 판정하는 절차는 따로 밟아야 하며, 판정 전의 수치를 특정 회사 책임으로 적지 않습니다.

조절 수단은 봇마다 다르고 표준이 아닙니다

RFC 9309이 정한 robots.txt 문법에는 user-agent, allow, disallow 세 가지만 있습니다. 요청 간격을 지정하는 Crawl-delay는 표준에 없는 확장이라 회사별 문서를 확인해야 합니다.

대상문서로 확인된 요청량 조절 수단경로 단위 차단주의할 점
Google 크롤러Crawl-delay 미지원. 짧은 기간의 500·503·429 응답만 안내지원오류 응답 효과가 호스트 전체에 적용
Anthropic 봇비표준 Crawl-delay 확장 지원지원ClaudeBot·Claude-User·Claude-SearchBot 을 각각 지정
OpenAI 봇공식 문서에 조절 수단 언급 없음(확인 불가)지원robots.txt 변경이 검색 쪽에 반영되기까지 약 24시간

Google 문서는 지원 필드를 user-agent, allow, disallow, sitemap 으로 적고 crawl-delay 같은 다른 필드는 지원하지 않는다고 밝힙니다(2026-08-31 갱신). Anthropic 지원 문서는 비표준 Crawl-delay 확장을 지원한다며 User-agent: ClaudeBot 아래 Crawl-delay: 1 예시를 제시합니다. OpenAI 크롤러 문서에는 요청 간격이나 요청량 조절에 관한 문장이 없습니다.

문서에 없는 수단은 동작한다고 가정하지 않습니다. 같은 줄을 적어도 한쪽은 따르고 다른 쪽은 무시하므로, 줄을 넣은 사실과 요청량이 줄어든 사실을 따로 확인합니다.

요청 급증의 원인이 사이트 구조인 경우

Google 문서는 요청이 갑자기 늘어나는 흔한 원인으로 사이트의 URL 구성 문제를 먼저 듭니다. 정렬·필터를 조합할 때마다 주소가 생기는 패싯 내비게이션(Faceted Navigation), 날짜마다 주소가 생기는 캘린더, 동적 검색 광고 대상이 예로 적혀 있습니다.

이 경우 전체 요청량을 눌러도 원인은 남습니다. 로그에서 요청이 많은 상위 경로 스무 개를 뽑아 쿼리 문자열이 붙은 주소의 비율을 봅니다. 파라미터 조합이 대부분이면 그 경로만 Disallow 하는 편이 중요한 페이지 수집을 유지합니다.

급할 때 쓰는 오류 응답의 조건과 부작용

Google 문서는 몇 시간에서 1~2일처럼 짧은 기간에 한해 200 대신 500·503·429를 돌려주는 방법을 안내합니다. 이 상태 코드가 상당수 관측되면 수집 속도가 내려가고, 오류가 줄면 자동으로 다시 올라갑니다.

같은 문서가 부작용도 함께 적습니다. 효과는 요청을 받은 호스트 전체(예: subdomain.example.com)에 적용되고, 새 페이지 발견과 기존 페이지 갱신이 늦어지며, 같은 주소에서 며칠 동안 이 코드가 관측되면 해당 주소가 색인에서 빠질 수 있습니다. 그래서 1~2일을 넘기지 말라고 권고합니다.

robots.txt 파일 자체는 이 조치에서 제외합니다. RFC 9309은 robots.txt가 500~599로 응답하면 크롤러가 전체 차단으로 간주해야 한다고 정하므로, 부하 차단을 전체 경로에 걸면 의도보다 넓게 막힙니다.

# 부하 차단을 켠 뒤 robots.txt 만 200 인지 확인합니다 (주소는 예시 값)
curl -s -o /dev/null -w '%{http_code}\n' https://example.com/robots.txt

바꾼 뒤 무엇을 보고 줄었다고 판단하나요

세 가지를 순서대로 확인합니다. 첫째, 조치 전후 같은 요일·같은 시간대의 사용자 에이전트별 시간당 요청 수를 로그에서 비교합니다. 둘째, robots.txt가 200으로 응답하고 의도한 줄이 그대로 보이는지 확인합니다. 셋째, 오류 응답을 켰다면 시작·종료 시각을 기록하고 1~2일 안에 끕니다.

바꾼 직후의 로그로 판단하지 않습니다. RFC 9309은 크롤러가 robots.txt 캐시를 24시간 넘게 쓰지 않도록 권고하고, OpenAI 문서도 검색 쪽 반영에 약 24시간이 걸릴 수 있다고 적습니다.

접근 로그로 확인할 수 없는 것이 하나 남습니다. 요청량을 줄인 뒤에도 검색 결과와 AI 답변에 우리 페이지가 계속 쓰이는지는 로그에 나오지 않습니다. 접근 허용, 실제 방문, 색인과 인용은 서로 다른 단계이므로 노출 쪽은 별도 자료로 봐야 합니다.

자주 묻는 질문

robots.txt 에 Crawl-delay 를 적어 두면 지원하지 않는 봇에서 오류가 나나요?
RFC 9309은 파싱할 수 없는 줄을 무시하고 나머지 규칙을 따르도록 정하므로 다른 줄이 깨지지는 않습니다. 다만 지원하지 않는 봇에는 아무 효과가 없으니, 그 줄을 넣은 것만으로 요청량이 줄었다고 판단하지 않습니다.
요청이 많은 봇을 아예 차단하는 편이 확실하지 않나요?
차단하면 그 용도의 노출도 함께 사라집니다. OpenAI 문서는 OAI-SearchBot 을 차단한 사이트는 ChatGPT 검색 답변에 표시되지 않는다고 적습니다. 부하 원인이 특정 경로라면 그 경로만 Disallow 하는 편이 손실이 적습니다.
사용자 에이전트에 그 회사 봇 이름이 적혀 있으면 믿어도 되나요?
문자열은 위장할 수 있습니다. 회사가 공개한 IP 목록이나 역방향 조회로 따로 확인해야 하고, 확인 전에는 요청량 수치를 특정 회사 책임으로 기록하지 않습니다.
500·503·429 중 무엇을 골라야 하나요?
Google 문서는 세 코드를 같은 효과로 나열하고 어느 것이 낫다고 구분하지 않습니다. 다른 회사 문서에서는 선호 코드를 확인하지 못했으므로, 이미 서버가 과부하 상황에 쓰는 코드를 그대로 쓰고 시작·종료 시각만 기록하는 편이 안전합니다.

관련 글

GEO

AI 크롤러가 정말 우리 사이트에 왔는지 어떻게 확인하나요?

글 읽기
GEO

OAI-SearchBot과 GPTBot 접근 정책 구분

글 읽기
기술 SEO

robots.txt 점검 체크리스트

글 읽기

사이트 상태부터 확인해 보세요

사이트 주소를 남기면 파일럿 범위에서 기술 SEO 상태를 점검해 드립니다.