라노벨 번역 방법 - lanobel beon-yeog bangbeob

Google의 자동화된 크롤러는 로봇 제외 프로토콜(REP)을 지원합니다. 즉, 사이트를 크롤링하기 전에 Google 크롤러는 사이트의 robots.txt 파일을 다운로드하고 파싱하여 사이트에서 크롤링할 수 있는 부분에 관한 정보를 추출합니다. REP는 사용자가 제어하는 Google 크롤러(예: 피드 구독)나 사용자 안전을 강화하는 데 사용되는 크롤러(예: 멀웨어 분석)에는 적용되지 않습니다.

이 페이지에서는 Google의 REP 해석에 관해 설명합니다. 원래 표준에 관해서는 RFC 9309를 확인하세요.

robots.txt 파일이란 무엇인가요?

크롤러가 사이트의 섹션에 액세스하지 못하도록 하려면 적절한 규칙으로 robots.txt 파일을 만들면 됩니다. robots.txt 파일은 어떤 크롤러가 사이트의 어느 부분에 액세스할 수 있는지에 관한 규칙이 포함된 간단한 텍스트 파일입니다. 예를 들어, example.com의 robots.txt 파일은 다음과 같을 수 있습니다.

# This robots.txt file controls crawling of URLs under https://example.com.
# All crawlers are disallowed to crawl files in the "includes" directory, such
# as .css, .js, but Google needs them for rendering, so Googlebot is allowed
# to crawl them.
User-agent: *
Disallow: /includes/

User-agent: Googlebot
Allow: /includes/

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

robots.txt를 처음 사용한다면 robots.txt 소개부터 시작하세요. robots.txt 파일 만들기 팁과 자주 묻는 질문(FAQ)과 답변에 관한 광범위한 목록도 있습니다.

파일 위치 및 유효성 범위

robots.txt 파일은 지원되는 프로토콜에서 사이트의 최상위 디렉터리에 있어야 합니다. robots.txt 파일의 URL은 다른 URL에서와 같이 대소문자를 구분합니다. Google 검색의 경우 지원되는 프로토콜은 HTTP, HTTPS, FTP입니다. HTTP와 HTTPS에서 크롤러는 HTTP 비조건부

disallow: [path]
7 요청으로 robots.txt 파일을 가져옵니다. FTP에서 크롤러는 익명 로그인을 사용하여 표준
disallow: [path]
8 명령어를 사용합니다.

robots.txt 파일에 나열된 규칙은 robots.txt 파일이 호스팅되는 호스트와 프로토콜, 포트 번호에만 적용됩니다.

유효한 robots.txt URL의 예

다음 표에는 robots.txt URL의 예와 유효한 URL 경로가 나와 있습니다. 첫 번째 열에는 robots.txt 파일의 URL이 포함되고 두 번째 열에는 robots.txt 파일이 적용되거나 적용되지 않는 도메인이 포함됩니다.

robots.txt URL 예
disallow: [path]
9

일반적인 경우로, 다른 하위 도메인이나 프로토콜, 포트 번호에는 유효하지 않습니다. 같은 호스트와 프로토콜, 포트 번호의 모든 하위 디렉터리에 있는 모든 파일에는 유효합니다.

유효함:
  • allow: [path]
    
    0
  • allow: [path]
    
    1
유효하지 않음:
  • allow: [path]
    
    2
  • allow: [path]
    
    3
  • allow: [path]
    
    4
allow: [path]
5

하위 도메인의 robots.txt는 해당 하위 도메인에서만 유효합니다.

유효함:

allow: [path]
6

유효하지 않음:

  • allow: [path]
    
    3
  • allow: [path]
    
    8
  • allow: [path]
    
    9
sitemap: [absoluteURL]
0유효한 robots.txt 파일이 아닙니다. 크롤러는 하위 디렉터리의 robots.txt 파일은 확인하지 않습니다.
sitemap: [absoluteURL]
1

IDN은 punycode 버전과 같습니다. RFC 3492도 참고하세요.

유효함:
  • sitemap: [absoluteURL]
    2
  • sitemap: [absoluteURL]
    3

유효하지 않음:

allow: [path]
6

sitemap: [absoluteURL]
5

유효함:

sitemap: [absoluteURL]
6

유효하지 않음:

allow: [path]
3

sitemap: [absoluteURL]
8

호스트 이름으로 IP 주소를 사용한 robots.txt는 이 IP 주소를 호스트 이름으로 크롤링하는 경우에만 유효합니다. 이러한 IP 주소에 호스팅된 모든 웹사이트에서 자동으로 유효하지 않습니다. 하지만 robots.txt 파일을 공유할 수 있으며 이 경우 공유된 호스트 이름으로 사용할 수 있습니다.

유효함:

sitemap: [absoluteURL]
9

유효하지 않음:

allow: [path]
3 (212.96.82.21에 호스팅된 경우도 포함)

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
1

표준 포트 번호(HTTP:

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
2, HTTPS:
user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
3, FTP:
user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
4)는 기본 호스트 이름과 같습니다.

유효함:

  • user-agent: otherbot
    disallow: /kale
    
    sitemap: https://example.com/sitemap.xml
    sitemap: https://cdn.example.org/other-sitemap.xml
    sitemap: https://ja.example.org/テスト-サイトマップ.xml
    5
  • allow: [path]
    
    3

유효하지 않음:

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
7

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
8

비표준 포트 번호의 robots.txt 파일은 이러한 포트 번호를 통해 사용할 수 있는 콘텐츠에서만 유효합니다.

유효함:

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml
9

유효하지 않음:

allow: [path]
3

오류 및 HTTP 상태 코드 처리

robots.txt 파일을 요청할 때 서버 응답의 HTTP 상태 코드는 Google 크롤러에서 robots.txt 파일을 사용하는 방식에 영향을 미칩니다. 다음 표는 Googlebot이 다양한 HTTP 상태 코드에 맞게 robots.txt 파일을 처리하는 방식을 요약한 것입니다.

오류 및 HTTP 상태 코드 처리
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
1성공을 알리는 HTTP 상태 코드는 Google 크롤러가 서버에서 제공한 robots.txt 파일을 처리하도록 합니다.
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
2

Google에서는 RFC 1945에 정의된 대로 5개 이상의 리디렉션 홉을 따른 다음 중지하고 이를 robots.txt의

user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
3로 처리합니다. 이는 리디렉션 체인의 허용되지 않는 URL에도 적용됩니다. 크롤러가 리디렉션으로 인해 규칙을 가져올 수 없기 때문입니다.

Google은 robots.txt 파일의 논리적 리디렉션(프레임, 자바스크립트, 메타 새로고침 유형 리디렉션)을 따르지 않습니다.

user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
4

Google 크롤러는

user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
5를 제외한 모든
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
6 오류를 유효한 robots.txt 파일이 없는 것처럼 처리합니다. 즉, Google은 크롤링 제한이 없다고 가정합니다.

크롤링 속도를 제한하기 위해
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
7 및
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
8 상태 코드를 사용하지 마세요.
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
5를 제외한
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
6 상태 코드는 크롤링 속도에 영향을 미치지 않습니다. 크롤링 속도를 제한하는 방법 알아보기
user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
1

서버가 Google의 robots.txt 요청에 명확한 응답을 제공할 수 없으므로 Google에서는 사이트가 완전히 허용되지 않는 것처럼 일시적으로

user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
2 및
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
5 서버 오류를 해석합니다. Google은 서버 오류가 아닌 HTTP 상태 코드를 가져올 때까지 robots.txt 파일을 크롤링하려고 합니다.
user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
4 오류로 인해 재시도가 상당히 빈번하게 발생합니다. robots.txt에 30일 넘게 연결할 수 없으면 Google은 마지막으로 캐시된 robots.txt 사본을 사용합니다. 사용할 수 없는 경우, Google은 크롤링 제한이 없다고 가정합니다.

크롤링을 일시적으로 정지해야 하면 사이트의 모든 URL에

user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
5 HTTP 상태 코드를 제공하는 것이 좋습니다.

누락된 페이지와 관련하여

user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
3 상태 코드가 아닌
user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
2를 반환하도록 사이트가 잘못 구성되었다고 Google이 판단할 수 있는 경우 사이트의
user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
2 오류를
user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h
3로 처리합니다. 예를 들어
user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
2 상태 코드를 반환하는 페이지의 오류 메시지가 '페이지를 찾을 수 없음'이라면 이 상태 코드를
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
1로 해석합니다.

기타 오류시간 초과, 잘못된 응답, 연결 재설정/중단, HTTP 청킹 오류와 같은 DNS 또는 네트워크 문제로 인해 가져올 수 없는 robots.txt 파일은 서버 오류로 처리됩니다.

캐싱

Google은 일반적으로 robots.txt 파일의 콘텐츠를 최대 24시간 동안 캐시하지만 캐시된 버전을 새로고침할 수 없는 때(예: 시간 초과나

user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)
2 오류로 인해)는 더 오래 캐시할 수도 있습니다. 캐시된 응답은 다른 크롤러에 의해 공유될 수 있습니다. Google은 max-age Cache-Control HTTP 헤더를 기반으로 하여 캐시 기간을 늘리거나 줄일 수 있습니다.

파일 형식

robots.txt 파일은 UTF-8로 인코딩된 일반 텍스트 파일이어야 하고 행은

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
3이나
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
4,
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
5로 구분해야 합니다.

Google은 robots.txt 파일 시작 부분의 유니코드 바이트 순서 표시(BOM)를 비롯하여 robots.txt 파일의 잘못된 행을 무시하고 유효한 행만 사용합니다. 예를 들어 다운로드한 콘텐츠가 robots.txt 규칙이 아닌 HTML이면 Google은 콘텐츠를 파싱하고 규칙을 추출하며 나머지는 모두 무시하려고 합니다.

마찬가지로 robots.txt 파일의 문자 인코딩이 UTF-8이 아니면 Google은 UTF-8 범위에 속하지 않는 문자를 무시할 수 있으므로 robots.txt 규칙이 무효화될 수 있습니다.

현재 Google은 robots.txt 파일 크기를 500키비바이트(KiB)로 제한합니다. 최대 파일 크기를 넘는 콘텐츠는 무시됩니다. robots.txt 파일이 너무 커질 수 있는 규칙을 통합하면 robots.txt 파일 크기를 줄일 수 있습니다. 예를 들어, 제외된 자료를 별도의 디렉터리에 배치합니다.

구문

유효한 robots.txt 행은 필드와 콜론, 값으로 구성됩니다. 공백은 선택사항이지만 가독성 향상을 위해 사용하는 것이 좋습니다. 행의 시작과 끝에 있는 공백은 무시됩니다. 주석을 포함하려면 주석 앞에

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
6 문자를 붙입니다.
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
6 문자 다음에 오는 모든 내용은 무시됩니다. 일반적인 형식은
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
8입니다.

Google에서 지원하는 필드는 다음과 같습니다.

  • user-agent: googlebot-news
    disallow: /fish
    
    user-agent: *
    disallow: /carrots
    
    user-agent: googlebot-news
    disallow: /shrimp
    
    9: 규칙이 적용되는 크롤러를 식별합니다.
  • user-agent: googlebot-news
    disallow: /fish
    disallow: /shrimp
    
    user-agent: *
    disallow: /carrots
    
    0: 크롤링할 수 있는 URL 경로입니다.
  • user-agent: googlebot-news
    disallow: /fish
    disallow: /shrimp
    
    user-agent: *
    disallow: /carrots
    
    1: 크롤링할 수 없는 URL 경로입니다.
  • user-agent: googlebot-news
    disallow: /fish
    disallow: /shrimp
    
    user-agent: *
    disallow: /carrots
    
    2: 사이트맵의 전체 URL입니다.

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
0 및
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1 필드는 규칙 또는 지시어이라고도 합니다. 규칙은
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
5 형식으로 지정되며, 여기에서
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
6는 선택사항입니다. 기본적으로 지정된 크롤러에 관한 크롤링의 제한은 없습니다. 크롤러는
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
6가 없는 규칙을 무시합니다.

지정되는 경우

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
6 값은 같은 프로토콜과 포트 번호, 호스트, 도메인 이름을 사용하여 robots.txt 파일을 가져온 웹사이트의 루트를 기준으로 합니다. 경로값은
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
9 기호로 시작하여 루트를 지정해야 하고 값은 대소문자를 구분합니다. 경로값에 기반한 URL 일치 자세히 알아보기

user-agent: googlebot-news disallow: /fish user-agent: * disallow: /carrots user-agent: googlebot-news disallow: /shrimp 9

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 행은 적용되는 크롤러 규칙을 식별합니다. robots.txt 파일에서 사용할 수 있는 user-agent 문자열의 전체 목록은 Google의 크롤러 및 user-agent 문자열을 참고하세요.

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 행의 값은 대소문자를 구분하지 않습니다.

user-agent: googlebot-news disallow: /fish disallow: /shrimp user-agent: * disallow: /carrots 1

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1 규칙은
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1 규칙이 그룹화된
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 행으로 식별된 크롤러가 액세스하면 안 되는 경로를 지정합니다. 크롤러는 경로가 없는 규칙을 무시합니다.

Google은 크롤링이 허용되지 않는 페이지의 콘텐츠 색인을 생성할 수 없지만 여전히 URL의 색인을 생성하여 스니펫 없이 검색결과에 표시할 수 있습니다. 색인 생성 차단 방법 알아보기

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1 규칙 값은 대소문자를 구분합니다.

사용:

disallow: [path]

user-agent: googlebot-news disallow: /fish disallow: /shrimp user-agent: * disallow: /carrots 0

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
0 규칙은 지정된 크롤러가 액세스할 수 있는 경로를 지정합니다. 경로를 지정하지 않으면 규칙이 무시됩니다.

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
0 규칙 값은 대소문자를 구분합니다.

사용:

allow: [path]

user-agent: googlebot-news disallow: /fish disallow: /shrimp user-agent: * disallow: /carrots 2

Google, Bing, 기타 주요 검색엔진에서는 sitemaps.org에 정의된 대로 robots.txt의

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
2 필드를 지원합니다.

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
2 필드의 값은 대소문자를 구분합니다.

사용:

sitemap: [absoluteURL]

disallow: [path]
04 행은 사이트맵 또는 사이트맵 색인 파일의 위치를 가리킵니다. 프로토콜과 호스트를 비롯하여 정규화된 URL이어야 하고 URL로 인코딩되지 않아도 됩니다. URL은 robots.txt 파일과 같은 호스트에 있지 않아도 됩니다. 여러
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
2 필드를 지정할 수 있습니다. 사이트맵 필드는 특정 사용자 에이전트와 연결되지 않고 크롤링이 허용되는 경우 모든 크롤러가 따를 수 있습니다.

예:

user-agent: otherbot
disallow: /kale

sitemap: https://example.com/sitemap.xml
sitemap: https://cdn.example.org/other-sitemap.xml
sitemap: https://ja.example.org/テスト-サイトマップ.xml

행 및 규칙 그룹화

각 크롤러에

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 행을 반복하여 여러 사용자 에이전트에 적용되는 규칙을 그룹화할 수 있습니다.

예:

user-agent: a
disallow: /c

user-agent: b
disallow: /d

user-agent: e
user-agent: f
disallow: /g

user-agent: h

이 예에는 네 가지 고유한 규칙 그룹이 있습니다.

  • 사용자 에이전트 'a' 그룹
  • 사용자 에이전트 'b' 그룹
  • 사용자 에이전트 'e' 및 'f' 그룹
  • 사용자 에이전트 'h' 그룹

그룹에 관한 기술적 설명은 REP 섹션 2.1을 참고하세요.

사용자 에이전트 우선순위

특정 크롤러에 하나의 그룹만 유효합니다. Google 크롤러는 robots.txt 파일에서 크롤러의 사용자 에이전트와 일치하는 가장 구체적인 사용자 에이전트가 있는 그룹을 찾아서 올바른 규칙 그룹을 결정합니다. 다른 그룹은 무시됩니다. 일치하지 않는 모든 텍스트는 무시됩니다. 예를 들어

disallow: [path]
07와
disallow: [path]
08은 모두
disallow: [path]
09과 같습니다. robots.txt 파일 내 그룹의 순서는 관련이 없습니다.

사용자 에이전트에 두 개 이상의 특정 그룹이 선언된 경우 특정 사용자 에이전트에 적용되는 그룹의 모든 규칙이 내부적으로 하나의 그룹에 결합됩니다. 사용자 에이전트 특정 그룹과 전역 그룹(

disallow: [path]
10)은 결합되지 않습니다.

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 필드 일치

user-agent: googlebot-news
(group 1)

user-agent: *
(group 2)

user-agent: googlebot
(group 3)

다음은 크롤러가 관련 그룹을 선택하는 방법입니다.

크롤러마다 이어지는 그룹Googlebot 뉴스
disallow: [path]
12는 그룹 1을 따릅니다. 그룹 1이 가장 구체적인 그룹이기 때문입니다.Googlebot(웹)
disallow: [path]
09은 그룹 3을 따릅니다.Googlebot StoreBot
disallow: [path]
14는 그룹 2를 따릅니다. 특정
disallow: [path]
14 그룹이 없기 때문입니다.Googlebot 뉴스(이미지를 크롤링할 때)이미지를 크롤링할 때
disallow: [path]
12는 그룹 1을 따릅니다.
disallow: [path]
12는 Google 이미지의 이미지를 크롤링하지 않으므로 그룹 1만 따릅니다.다른 검색 로봇(웹)다른 Google 크롤러는 그룹 2를 따릅니다.다른 검색 로봇(뉴스)뉴스 콘텐츠를 크롤링하지만
disallow: [path]
12로 식별되지 않는 다른 Google 크롤러는 그룹 2를 따릅니다. 연관된 크롤러를 위한 항목이 있다 하더라도 구체적으로 일치하는 경우에만 유효합니다.

규칙 그룹화

robots.txt 파일에 특정 사용자 에이전트와 관련된 그룹이 여러 개 있다면 Google 크롤러는 내부적으로 이 그룹을 병합합니다. 예:

user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp

크롤러는 다음 예와 같이 사용자 에이전트에 기반하여 내부적으로 규칙을 그룹화합니다.

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
0,
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1,
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9 외의 다른 규칙은 robots.txt 파서에서 무시됩니다. 즉, 다음 robots.txt 스니펫이 하나의 그룹으로 처리되므로
user-agent: googlebot-news
disallow: /fish

user-agent: *
disallow: /carrots

user-agent: googlebot-news
disallow: /shrimp
9
disallow: [path]
23와
disallow: [path]
24는 모두
disallow: [path]
25 규칙의 영향을 받습니다.

user-agent: a
sitemap: https://example.com/sitemap.xml

user-agent: b
disallow: /

크롤러는 robots.txt 규칙을 처리할 때

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
2 행을 무시합니다. 예를 들어 크롤러가 이전 robots.txt 스니펫을 인식하는 방식은 다음과 같습니다.

disallow: [path]
0

경로값에 의한 URL 일치

Google에서는

user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
0 및
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
1 규칙의 경로값에 기반하여 사이트의 특정 URL에 규칙이 적용되는지를 결정합니다. 크롤러가 가져오려고 하는 URL의 경로 구성요소와 규칙을 비교하면 됩니다. RFC 3986에 따라 UTF-8 문자 또는 퍼센트 이스케이프 처리된 UTF-8 인코딩된 문자로 7비트가 아닌 ASCII 문자가 경로에 포함될 수 있습니다.

Google, Bing, 기타 주요 검색엔진에서는 경로값에 제한된 형태의 와일드 카드를 지원합니다. 지원되는 와일드 카드 문자는 다음과 같습니다.

  • disallow: [path]
    
    10 기호는 0개 이상의 유효한 문자를 나타냅니다.
  • disallow: [path]
    
    30 기호는 URL의 끝을 나타냅니다.
경로 일치의 예
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
9루트 및 그 이하 수준의 모든 URL과 일치합니다.
disallow: [path]
32
user-agent: googlebot-news
disallow: /fish
disallow: /shrimp

user-agent: *
disallow: /carrots
9와 같습니다. 뒤쪽 와일드 카드는 무시됩니다.
disallow: [path]
34루트하고만 일치합니다. 모든 하위 수준 URL의 크롤링이 허용됩니다.
disallow: [path]
35

disallow: [path]
35로 시작하는 모든 경로와 일치합니다. 일치 여부에서는 대소문자를 구분합니다.

일치:

  • disallow: [path]
    
    35
  • disallow: [path]
    
    38
  • disallow: [path]
    
    39
  • disallow: [path]
    
    40
  • disallow: [path]
    
    41
  • disallow: [path]
    
    42

일치하지 않음:

  • disallow: [path]
    
    43
  • disallow: [path]
    
    44
  • disallow: [path]
    
    45
  • disallow: [path]
    
    46
disallow: [path]
47

disallow: [path]
35와 같습니다. 뒤쪽 와일드 카드는 무시됩니다.

일치:

  • disallow: [path]
    
    35
  • disallow: [path]
    
    38
  • disallow: [path]
    
    39
  • disallow: [path]
    
    40
  • disallow: [path]
    
    41
  • disallow: [path]
    
    42

일치하지 않음:

  • disallow: [path]
    
    43
  • disallow: [path]
    
    44
  • disallow: [path]
    
    45
  • disallow: [path]
    
    46
disallow: [path]
59

disallow: [path]
59 폴더의 모든 항목과 일치합니다.

일치:

  • disallow: [path]
    
    59
  • disallow: [path]
    
    62
  • disallow: [path]
    
    63

일치하지 않음:

  • disallow: [path]
    
    35
  • disallow: [path]
    
    38
  • disallow: [path]
    
    66
  • disallow: [path]
    
    67
disallow: [path]
68

disallow: [path]
69가 포함된 모든 경로와 일치합니다.

일치:

  • disallow: [path]
    
    70
  • disallow: [path]
    
    71
  • disallow: [path]
    
    72
  • disallow: [path]
    
    73
  • disallow: [path]
    
    74
  • disallow: [path]
    
    75

일치하지 않음:

  • user-agent: googlebot-news
    disallow: /fish
    disallow: /shrimp
    
    user-agent: *
    disallow: /carrots
    
    9(/index.php에 매핑하는 경우에도 해당)
  • disallow: [path]
    
    77
disallow: [path]
78

disallow: [path]
69로 끝나는 모든 경로와 일치합니다.

일치:

  • disallow: [path]
    
    71
  • disallow: [path]
    
    72

일치하지 않음:

  • disallow: [path]
    
    82
  • disallow: [path]
    
    75
  • disallow: [path]
    
    84
  • disallow: [path]
    
    77
disallow: [path]
86

disallow: [path]
35 및
disallow: [path]
69가 순서대로 포함된 모든 경로와 일치합니다.

일치:

  • disallow: [path]
    
    89
  • disallow: [path]
    
    90

일치하지 않음:

disallow: [path]
91

규칙 우선순위

robots.txt 규칙을 URL과 일치시킬 때 크롤러는 규칙 경로 길이에 따라 가장 구체적인 규칙을 사용합니다. 와일드 카드가 있는 규칙을 포함하여 충돌하는 규칙의 경우 Google은 가장 제한이 적은 규칙을 사용합니다.