Robots.txt: SEO를 위한 궁극적인 가이드(2021년판)

게시 됨: 2021-06-10

로봇.txt 오늘은 웹사이트의 SEO를 위해 가장 중요한 파일 중 하나를 만드는 방법을 배우게 될 것입니다.

(robots.txt 파일).

특히 로봇 제외 프로토콜을 사용하여 특정 페이지의 봇을 차단하고, 크롤링 빈도를 늘리고, 크롤링 예산을 최적화하고, 궁극적으로 SERP에서 올바른 페이지의 순위를 높이는 방법을 보여 드리겠습니다.

나는 덮고있다 :

  • robots.txt 파일이란
  • robots.txt가 중요한 이유
  • robots.txt 작동 방식
  • Robots.txt 사용자 에이전트 및 지시문
  • Robots.txt 대 메타 로봇
  • robots.txt를 찾는 방법
  • robots.txt 파일 만들기
  • Robots.txt 파일 모범 사례
  • Robots.txt 예제
  • robots.txt에 오류가 있는지 감사하는 방법

게다가 훨씬 더. 바로 뛰어들자.

Robots.txt 파일이란 무엇입니까? 그리고 왜 필요한가

간단히 말해서 robots.txt 파일은 웹 로봇에 대한 사용 설명서입니다.

모든 유형의 봇에게 크롤링해야 하는(및 하지 말아야 하는) 사이트 섹션을 알려줍니다.

즉, robots.txt는 주로 검색 엔진 로봇(일명 웹 크롤러)의 활동을 제어하기 위한 "행동 강령"으로 사용됩니다.

robots.txt는 무엇입니까?

robots.txt는 웹사이트 크롤링 방법에 대한 지침을 위해 모든 주요 검색 엔진(Google, Bing 및 Yahoo 포함)에서 정기적으로 확인합니다. 이러한 지침을 지시문 이라고 합니다.

지시문이 없거나 robots.txt 파일이 없는 경우 검색 엔진은 전체 웹사이트, 개인 페이지 등을 크롤링합니다.

대부분의 검색 엔진은 순종하지만 robots.txt 지시문을 준수하는 것은 선택 사항이라는 점에 유의하는 것이 중요합니다. 원하는 경우 검색 엔진에서 robots.txt 파일을 무시하도록 선택할 수 있습니다.

고맙게도 Google은 그러한 검색 엔진 중 하나가 아닙니다. Google은 robots.txt 파일의 지침을 따르는 경향이 있습니다.

Robots.txt가 중요한 이유는 무엇입니까?

robots.txt 파일을 갖는 것은 많은 웹사이트, 특히 작은 웹사이트에서 중요하지 않습니다.

Google은 일반적으로 사이트의 모든 필수 페이지를 찾고 색인을 생성할 수 있기 때문입니다.

또한 중복 콘텐츠나 중요하지 않은 페이지는 자동으로 색인화하지 않습니다.

그러나 여전히 robots.txt 파일이 없을 이유가 없습니다. 따라서 하나를 갖는 것이 좋습니다.

robots.txt를 사용하면 웹사이트에서 검색 엔진이 크롤링할 수 있는 항목과 크롤링할 수 없는 항목을 더 잘 제어할 수 있으며 다음과 같은 몇 가지 이유로 유용합니다.

비공개 페이지가 검색 엔진에서 차단되도록 허용

사이트에 색인 생성을 원하지 않는 페이지가 있는 경우가 있습니다.

예를 들어, 스테이징 환경에서 새 웹 사이트를 개발 중일 수 있습니다. 이 웹 사이트는 시작될 때까지 사용자에게 숨겨져 있어야 합니다.

또는 SERP에 표시하고 싶지 않은 웹사이트 로그인 페이지가 있을 수 있습니다.

이 경우 robots.txt를 사용하여 검색 엔진 크롤러에서 이러한 페이지를 차단할 수 있습니다.

검색 엔진 크롤링 예산 제어

검색 엔진에서 모든 페이지의 색인을 생성하는 데 어려움이 있다면 크롤링 예산 문제가 있을 수 있습니다.

간단히 말해서, 검색 엔진은 웹사이트의 기본 페이지에서 콘텐츠를 크롤링하는 데 할당된 시간을 다 사용하고 있습니다.

웹사이트 크롤링 예산

robots.txt를 사용하여 유틸리티가 낮은 URL을 차단함으로써 검색 엔진 로봇은 가장 중요한 페이지에 크롤링 예산을 더 많이 사용할 수 있습니다.

리소스 인덱싱 방지

"no-index" 메타 지시어를 사용하여 개별 페이지가 인덱싱되지 않도록 하는 것이 가장 좋습니다.

문제는 메타 지시문이 PDF 및 Word 문서와 같은 멀티미디어 리소스에 대해 제대로 작동하지 않는다는 것입니다.

바로 여기에서 robots.txt가 유용합니다.

robots.txt 파일에 간단한 텍스트 줄을 추가하면 검색 엔진이 이러한 멀티미디어 파일에 액세스하지 못하도록 차단됩니다.

(이 포스트의 뒷부분에서 정확히 하는 방법을 알려 드리겠습니다.)

Robots.txt는 어떻게 (정확하게) 작동합니까?

이미 공유한 것처럼 robots.txt 파일은 검색 엔진 로봇의 사용 설명서 역할을 합니다. 검색 봇에게 크롤링해야 하는 위치(및 크롤링하지 않아야 하는 위치)를 알려줍니다.

이것이 검색 크롤러가 웹사이트에 도착하는 즉시 robots.txt 파일을 찾는 이유입니다.

robots.txt를 찾으면 크롤러는 사이트 크롤링을 계속하기 전에 먼저 이를 읽습니다.

Robots.txt 크롤링

웹 크롤러가 robots.txt를 찾지 못하거나 파일에 검색 봇의 활동을 허용하지 않는 지시문이 포함되어 있지 않은 경우 크롤러는 평소와 같이 전체 사이트를 계속 스파이더링합니다.

robots.txt 파일을 검색 봇이 찾고 읽을 수 있도록 robots.txt는 매우 특정한 방식으로 형식이 지정됩니다.

첫째, HTML 마크업 코드(따라서 .txt 확장자)가 없는 텍스트 파일입니다.

둘째, 웹사이트의 루트 폴더(예: https://seosherpa.com/robots.txt)에 저장됩니다.

셋째, 다음과 같이 모든 robots.txt 파일에 공통적인 표준 구문을 사용합니다.

 Sitemap: [URL location of sitemap] User-agent: [bot identifier] [directive 1] [directive 2] [directive ...] User-agent: [another bot identifier] [directive 1] [directive 2] [directive ...]

이 구문은 언뜻 보기에는 어려워 보일 수 있지만 실제로는 매우 간단합니다.

간단히 말해서 지침이 적용되는 봇(사용자 에이전트)을 정의한 다음 봇이 따라야 하는 규칙(지시문)을 명시합니다.

이 두 가지 구성 요소를 더 자세히 살펴보겠습니다.

사용자 에이전트

사용자 에이전트는 특정 웹 크롤러와 인터넷에서 활성화된 기타 프로그램을 정의하는 데 사용되는 이름입니다.

장치 유형 및 브라우저용 에이전트를 포함하여 말 그대로 수백 개의 사용자 에이전트가 있습니다.

대부분은 robots.txt 파일 및 SEO와 관련이 없습니다. 반면에 다음 사항을 알아야 합니다.

  • 구글: 구글
  • Google 이미지: Googlebot-이미지
  • Google 비디오: Googlebot-비디오
  • Google 뉴스: Googlebot-뉴스
  • 빙: 빙봇
  • Bing 이미지 및 비디오: MSNBot-Media
  • 야후: 슬러프
  • 얀덱스: 얀덱스
  • 바이두 : 바이두스파이더
  • 덕덕고: 덕덕봇

사용자 에이전트를 명시함으로써 다른 검색 엔진에 대해 다른 규칙을 설정할 수 있습니다.

Robots.txt 사용자 에이전트

예를 들어 특정 페이지가 Google 검색 결과에 표시되기를 원하지만 Baidu 검색은 표시하지 않으려면 robots.txt 파일에 두 가지 명령 집합을 포함할 수 있습니다. "사용자 에이전트: Baiduspider"에 의해.

지시문을 모든 사용자 에이전트에 적용하려면 별표(*) 와일드카드를 사용할 수도 있습니다.

예를 들어 DuckDuckGo를 제외한 모든 검색 엔진 로봇이 사이트를 크롤링하지 못하도록 차단하고 싶다고 가정해 보겠습니다. 방법은 다음과 같습니다.

 User-agent: * Disallow: / User-agent: DuckDuckBot Allow: /

참고: robots.txt 파일에 모순되는 명령이 있는 경우 봇은 보다 세분화된 명령을 따릅니다.

그렇기 때문에 위의 예에서 DuckDuckBot은 웹사이트를 크롤링할 줄 알고 있습니다. 이전 지침(모든 봇에 적용)에서는 크롤링하지 말라고 했습니다. 간단히 말해서 봇은 자신에게 가장 정확하게 적용되는 지침을 따릅니다.

지시문

지시문은 사용자 에이전트가 따르기를 원하는 행동 강령입니다. 즉, 지시문은 검색 봇이 웹사이트를 크롤링하는 방법 을 정의합니다.

다음은 GoogleBot이 현재 지원하는 지시문과 robots.txt 파일 내에서의 사용입니다.

허용하지 않음

이 지시문을 사용하여 검색 봇이 특정 URL 경로의 특정 파일 및 페이지를 크롤링하지 못하도록 합니다.

Robots.txt Disallow 지시문

예를 들어 GoogleBot이 Wiki 및 해당 페이지에 액세스하는 것을 차단하려면 robots.txt에 다음 지시문이 포함되어야 합니다.

 User-agent: GoogleBot Disallow: /wiki

disallow 지시문을 사용하여 정확한 URL, 특정 디렉토리 내의 모든 파일 및 페이지, 심지어 전체 웹사이트의 크롤링을 차단할 수 있습니다.

허용하다

허용 지시문은 검색 엔진이 사이트의 허용되지 않는 섹션에서 특정 하위 디렉토리 또는 페이지를 크롤링하도록 허용하려는 경우에 유용합니다.

Robots.txt 허용 지시문

모든 검색 엔진이 블로그 게시물을 크롤링하지 못하도록 하고 싶다고 가정해 보겠습니다. 그런 다음 다음과 같이 허용 지시문을 사용합니다.

 User-agent: * Disallow: /blog Allow: /blog/allowable-post

검색 봇은 항상 robots.txt 파일에 제공된 가장 세부적인 지침을 따르기 때문에 /blog/allowable-post 크롤링을 알고 있지만 해당 디렉토리의 다른 게시물이나 파일은 크롤링하지 않습니다.

  • /블로그/포스트원/
  • /블로그/포스트 2/
  • /블로그/파일 이름.pdf

Google과 Bing 모두 이 지시문을 지원합니다. 그러나 다른 검색 엔진은 그렇지 않습니다.

사이트맵

sitemap 지시문은 검색 엔진에 XML 사이트맵의 위치를 ​​지정하는 데 사용됩니다.

Robots.txt 사이트맵 지침

사이트맵을 처음 사용하는 경우 검색 엔진에서 크롤링하고 색인을 생성하려는 페이지를 나열하는 데 사용됩니다.

robots.txt에 사이트맵 지시문을 포함하면 검색 엔진이 사이트맵을 찾고 웹사이트의 가장 중요한 페이지를 크롤링하고 색인을 생성하는 데 도움이 됩니다.

즉, 이미 Search Console을 통해 XML 사이트맵을 제출한 경우 robots.txt에 사이트맵을 추가하는 것은 Google에서 다소 중복됩니다. 그러나 Ask, Bing 및 Yahoo와 같은 검색 엔진에 사이트맵을 찾을 수 있는 위치를 알려주기 때문에 사이트맵 지시문을 사용하는 것이 가장 좋습니다.

다음은 사이트맵 지시문을 사용하는 robots.txt 파일의 예입니다.

 Sitemap: https://www.website.com/sitemap.xml User-agent: * Disallow: /wiki/ Allow: /wike/article-title/

robots.txt 파일에서 사이트맵 지시문 위치를 확인하세요. robots.txt의 맨 위에 배치하는 것이 가장 좋습니다. 바닥에도 놓을 수 있습니다.

사이트맵이 여러 개인 경우 robots.txt 파일에 모두 포함해야 합니다. 다음은 페이지와 게시물에 대해 별도의 XML 사이트맵이 있는 경우 robots.txt 파일의 모양입니다.

 Sitemap: http://website.com/post-sitemap.xml Sitemap: http://website.com/page-sitemap.xml User-agent: * Disallow: /wiki/ Allow: /wike/article-title/

어느 쪽이든 지원되는 모든 사용자 에이전트가 지침을 따르기 때문에 각 XML 사이트맵을 한 번만 언급하면 ​​됩니다.

경로를 나열하는 다른 robots.txt 지시문과 달리 sitemap 지시문은 프로토콜, 도메인 이름 및 최상위 도메인 확장자를 포함하여 XML 사이트맵의 절대 URL을 명시해야 합니다.

코멘트

"지시문"이라는 주석은 사람에게 유용하지만 검색 봇에서는 사용하지 않습니다.

Robots.txt 댓글

특정 지시문이 존재하는 이유를 상기시키거나 robots.txt에 액세스할 수 있는 사람이 중요한 지시문을 삭제하지 못하도록 주석을 추가할 수 있습니다. 간단히 말해서 주석은 robots.txt 파일에 메모를 추가하는 데 사용됩니다.

댓글을 추가하려면 입력하세요." #" 뒤에 주석 텍스트가 표시됩니다.

 # Don't allow access to the /wp-admin/ directory for all robots. User-agent: * Disallow: /wp-admin/

줄의 시작 부분(위 참조)이나 같은 줄의 지시문 뒤에(아래 참조) 주석을 추가할 수 있습니다.

 User-agent: * #Applies to all robots Disallow: /wp-admin/ # Don't allow access to the /wp-admin/ directory.

댓글 작성을 선택하는 곳마다 해시 이후의 모든 내용은 무시됩니다.

지금까지 따라오셨나요?

엄청난! 이제 robots.txt 파일에 필요한 주요 지시문을 다루었습니다. 이 지시문은 Google에서 지원하는 유일한 지시문이기도 합니다.

그러나 다른 검색 엔진은 어떻습니까? Bing, Yahoo 및 Yandex의 경우 사용할 수 있는 지시문이 하나 더 있습니다.

크롤링 지연

Crawl-delay 지시문은 서버가 너무 많은 크롤링 요청으로 과부하되는 것을 방지하는 데 사용되는 비공식 지시문입니다.

즉, 검색 엔진이 사이트를 크롤링할 수 있는 빈도를 제한하는 데 사용합니다.

Robots.txt 크롤링 지연 지시문

검색 엔진이 웹사이트를 자주 크롤링하여 서버에 과부하를 줄 수 있는 경우 robots.txt 파일에 Crawl-delay 지시문을 추가하면 일시적으로 문제가 해결됩니다.

귀하의 웹사이트가 형편없는 호스팅이나 잘못 구성된 호스팅 환경에서 실행 중일 수 있으며, 이는 신속하게 수정해야 합니다.

크롤링 지연 지시문은 검색 봇이 웹사이트를 크롤링할 수 있는 시간(초)을 정의하여 작동합니다.

예를 들어 크롤링 지연을 5로 설정하면 검색 봇이 하루를 5초 창으로 분할하여 각 창에서 하루 동안 최대 약 17,280개의 URL에 대해 한 페이지만(또는 아무 것도 크롤링하지 않음) 크롤링합니다.

따라서 이 지시문을 설정할 때 특히 큰 웹 사이트가 있는 경우 주의하십시오. 사이트에 수백만 페이지가 있는 경우 하루에 17,280개의 URL만 크롤링되는 것은 그다지 도움이 되지 않습니다.

각 검색 엔진이 크롤링 지연 지시문을 처리하는 방식이 다릅니다. 아래에서 분해해 보겠습니다.

크롤링 지연 및 Bing, Yahoo 및 Yandex

Bing, Yahoo 및 Yandex는 모두 robots.txt에서 크롤링 지연 지시문을 지원합니다.

즉, BingBot, Slurp 및 YandexBot 사용자 에이전트에 대한 크롤링 지연 지시문을 설정할 수 있으며 검색 엔진은 그에 따라 크롤링을 조절합니다.

각 검색 엔진은 크롤링 지연을 약간 다른 방식으로 해석하므로 해당 문서를 확인하십시오.

  • 빙과 야후
  • 얀덱스

즉, 이러한 각 엔진에 대한 크롤링 지연 지시문의 형식은 동일합니다. disallow OR allow 지시문 바로 뒤에 배치해야 합니다. 다음은 예입니다.

 User-agent: BingBot Allow: /widgets/ Crawl-delay: 5

크롤링 지연 및 Google

Google의 크롤러는 크롤링 지연 지시문을 지원하지 않으므로 robots.txt에서 GoogleBot에 대한 크롤링 지연을 설정하는 것은 의미가 없습니다.

그러나 Google은 Google Search Console에서 크롤링 속도 정의를 지원합니다. 방법은 다음과 같습니다.

  • 구글 서치 콘솔의 설정 페이지로 이동합니다.
  • 크롤링 속도를 정의할 속성을 선택하십시오.
  • "Google의 최대 크롤링 속도 제한"을 클릭합니다.
  • 슬라이더를 원하는 크롤링 속도로 조정합니다. 기본적으로 크롤링 속도에는 'Google에서 내 사이트를 최적화하도록 허용(권장)' 설정이 있습니다.
Google Search Console 크롤링 속도 설정

크롤링 지연 및 Baidu

Google과 마찬가지로 Baidu는 크롤링 지연 지시문을 지원하지 않습니다. 그러나 Google Search Console과 유사하게 크롤링 빈도를 제어할 수 있는 Baidu 웹마스터 도구 계정을 등록할 수 있습니다.

결론? Robots.txt는 웹사이트의 특정 페이지를 크롤링하지 않도록 검색 엔진 스파이더에 지시합니다.

Robots.txt 대 메타 로봇 ​​대 x-로봇

엄청나게 많은 "로봇" 지침이 있습니다. 차이점은 무엇입니까, 아니면 동일합니까?

간단한 설명을 드리겠습니다.

먼저 robots.txt는 실제 텍스트 파일인 반면 메타 및 x-로봇은 웹페이지 코드 내의 태그입니다.

둘째, robots.txt는 웹사이트 페이지를 크롤링하는 방법에 대한 제안 을 봇에게 제공합니다. 반면에 로봇의 메타 지시문은 페이지 콘텐츠의 크롤링 및 색인 생성에 대한 매우 확실한 지침 을 제공합니다.

그 외에도 세 가지 모두 다른 기능을 수행합니다.

Robots.txt는 사이트 또는 디렉토리 전체 크롤링 동작을 지시하는 반면 메타 및 x-로봇은 개별 페이지(또는 페이지 요소) 수준에서 인덱싱 동작을 지시할 수 있습니다.

Robots.txt 대 메타 로봇

일반적으로:

페이지의 색인이 생성되지 않도록 하려면 "색인 없음" 메타 로봇 ​​태그를 사용해야 합니다. robots.txt에서 페이지를 허용하지 않는다고 해서 검색 엔진에 표시되지 않는 것은 아닙니다(robots.txt 지시문은 결국 제안 사항임). 또한 검색 엔진 로봇은 여전히 ​​해당 URL을 찾고 다른 웹사이트에서 링크된 경우 색인을 생성할 수 있습니다.

반대로 미디어 파일이 인덱싱되지 않도록 하려면 robots.txt를 사용하는 것이 좋습니다. jpeg 또는 PDF와 같은 파일에는 메타 로봇 ​​태그를 추가할 수 없습니다.

Robots.txt를 찾는 방법

웹사이트에 이미 robots.txt 파일이 있는 경우 yourdomain.com/robots.txt에서 액세스할 수 있습니다.

브라우저에서 URL로 이동합니다.

Robots.txt 예제

위와 같은 텍스트 기반 페이지가 보이면 robots.txt 파일이 있는 것입니다.

Robots.txt 파일을 만드는 방법

robots.txt 파일이 아직 없다면 간단하게 만들 수 있습니다.

먼저 메모장, Microsoft Word 또는 텍스트 편집기를 열고 파일을 '로봇'으로 저장합니다.

소문자를 사용해야 하고 파일 형식 확장자로 .txt를 선택하십시오.

빈 Robots.txt 파일

둘째, 지시문을 추가하십시오. 예를 들어 모든 검색 봇이 /login/ 디렉토리를 크롤링하지 못하도록 하려면 다음을 입력합니다.

기본 Robots.txt 파일

robots.txt 파일에 만족할 때까지 지시문을 계속 추가하십시오.

또는 Ryte의 이와 같은 도구를 사용하여 robots.txt를 생성할 수 있습니다.

Robots.txt 생성기 도구

도구 사용의 한 가지 이점은 인적 오류를 최소화한다는 것입니다.

robots.txt 구문의 작은 실수는 SEO 재앙으로 끝날 수 있습니다.

즉, robots.txt 생성기를 사용할 때의 단점은 사용자 정의의 기회가 최소화된다는 것입니다.

그렇기 때문에 내가 직접 robots.txt 파일을 작성하는 방법을 배우는 것이 좋습니다. 그런 다음 요구 사항에 정확하게 robots.txt를 빌드할 수 있습니다.

Robots.txt 파일을 저장할 위치

적용되는 하위 도메인의 최상위 디렉토리에 robots.txt 파일을 추가하십시오.

예를 들어 yourdomain.com 에서 크롤링 동작을 제어하려면 yourdomain.com/robots.txt URL 경로에서 robots.txt 파일에 액세스할 수 있어야 합니다.

반면 shop.yourdomain.com 과 같은 하위 도메인에서 크롤링을 제어하려면 shop.yourdomain.com/robots.txt URL 경로에서 robots.txt에 액세스할 수 있어야 합니다.

황금률은 다음과 같습니다.

  • 웹사이트의 모든 하위 도메인에 자체 robots.txt 파일을 제공합니다.
  • 파일 이름을 모두 소문자로 robots.txt 로 지정합니다.
  • 참조하는 하위 도메인의 루트 디렉터리에 파일을 배치합니다.

루트 디렉토리에서 robots.txt 파일을 찾을 수 없는 경우 검색 엔진은 지시문이 없다고 가정하고 웹사이트 전체를 크롤링합니다.

Robots.txt 파일 모범 사례

다음으로 robots.txt 파일의 규칙을 살펴보겠습니다. 다음 모범 사례를 사용하여 일반적인 robots.txt 함정을 피하세요.

각 지시문에 새 줄 사용

robots.txt의 각 지시문은 새 줄에 있어야 합니다.

그렇지 않은 경우 검색 엔진은 크롤링(및 색인) 대상에 대해 혼란스러워할 것입니다.

예를 들어 다음과 같이 잘못 구성되어 있습니다.

 User-agent: * Disallow: /folder/ Disallow: /another-folder/

반면 다음은 올바르게 설정된 robots.txt 파일입니다.

 User-agent: * Disallow: /folder/ Disallow: /another-folder/

"거의" 지정이 항상 이깁니다.

Google 및 Bing의 경우 더 세분화된 지시문이 승리합니다.

예를 들어 이 Allow 지시문은 문자 길이가 더 길기 때문에 Disallow 지시문보다 우선합니다.

 User-agent: * Disallow: /about/ Allow: /about/company/

Google과 Bing은 /about/company/를 크롤링하지만 /about/ 디렉토리의 다른 페이지는 크롤링하지 않습니다.

그러나 다른 검색 엔진의 경우에는 그 반대입니다.

기본적으로 Google 및 Bing을 제외한 모든 주요 검색 엔진의 경우 첫 번째 일치 지시문이 항상 우선 합니다.

위의 예에서 검색 엔진은 Disallow 지시문을 따르고 /about/company 페이지가 크롤링되지 않음을 의미하는 Allow 지시문을 무시합니다.

모든 검색 엔진에 대한 규칙을 만들 때 이 점을 염두에 두십시오.

사용자 에이전트당 하나의 지시문 그룹

robots.txt에 사용자 에이전트(boh-oh-boy)당 여러 그룹의 지시문이 포함되어 있으면 혼란스러울 수 있습니까?

로봇은 다양한 선언의 모든 규칙을 하나의 그룹으로 결합하고 모든 규칙을 따르기 때문에 반드시 로봇의 경우는 아니지만 사용자를 위한 것입니다.

인적 오류의 가능성을 피하기 위해 사용자 에이전트를 한 번 설명한 다음 해당 사용자 에이전트에 적용되는 모든 지시문을 아래에 나열하십시오.

Robots.txt 사용자 에이전트

물건을 깔끔하고 단순하게 유지함으로써 실수를 저지를 가능성이 줄어듭니다.

와일드카드(*)를 사용하여 지침 단순화

위의 예에서 와일드카드(*)를 발견하셨습니까?

좋아요; 와일드카드(*)를 사용하여 모든 사용자 에이전트에 규칙을 적용하고 지시문을 선언할 때 URL 패턴을 일치시킬 수 있습니다.

예를 들어 검색 봇이 웹사이트에서 매개변수화된 제품 카테고리 URL에 액세스하지 못하도록 하려면 다음과 같이 각 카테고리를 나열할 수 있습니다.

 User-agent: * Disallow: /products/watches? Disallow: /products/handbags? Disallow: /products/shoes?

또는 모든 범주에 규칙을 적용하는 와일드카드를 사용할 수 있습니다. 다음과 같이 표시됩니다.

 User-agent: * Disallow: /products/*?

이 예는 검색 엔진이 물음표가 포함된 /product/ 하위 폴더 내의 모든 URL을 크롤링하지 못하도록 차단합니다. 즉, 매개변수화된 모든 제품 카테고리 URL입니다.

Google, Bing, Yahoo는 robots.txt 지시문 및 Ask 내에서 와일드카드 사용을 지원합니다.

URL의 끝을 지정하려면 "$"를 사용하십시오.

URL의 끝을 나타내려면 robots.txt 경로 뒤에 달러 기호( $ )를 사용합니다.

웹사이트의 모든 .doc 파일에 액세스하는 검색 봇을 중지하고 싶다고 가정해 보겠습니다. 다음 지시문을 사용합니다.

 User-agent: * Disallow: /*.doc$

이렇게 하면 검색 엔진이 .doc로 끝나는 URL에 액세스하지 못하게 됩니다.

즉, /media/file.doc은 크롤링하지 않지만 /media/file.doc?id=72491은 크롤링합니다. 왜냐하면 해당 URL이 ".doc"로 끝나지 않기 때문입니다.

각 하위 도메인은 고유한 robots.txt를 가져옵니다.

Robots.txt 지시문은 robots.txt 파일이 호스팅되는 (하위) 도메인에만 적용됩니다.

이는 사이트에 다음과 같은 하위 도메인이 여러 개 있는 경우를 의미합니다.

  • 도메인닷컴
  • 티켓.도메인.com
  • 이벤트.도메인.com

각 하위 도메인에는 자체 robots.txt 파일이 필요합니다.

robots.txt는 항상 각 하위 도메인의 루트 디렉토리에 추가되어야 합니다. 위의 예를 사용하는 경로는 다음과 같습니다.

  • domain.com/robots.txt
  • 티켓.도메인.com/robots.txt
  • events.domain.com/robots.txt

robots.txt에서 noindex를 사용하지 마세요.

간단히 말해서 Google은 robots.txt에서 색인이 없는 지시문을 지원하지 않습니다.

Google은 과거에 이를 따랐지만 2019년 7월 현재 Google은 지원을 완전히 중단했습니다.

다른 검색 엔진의 색인이 없는 콘텐츠에 색인이 없는 robots.txt 지시문을 사용할 생각이라면 다시 생각해 보십시오.

비공식 색인 없음 지시문은 Bing에서 작동하지 않았습니다.

지금까지 검색 엔진에서 색인이 없는 콘텐츠에 대한 가장 좋은 방법은 제외하려는 페이지에 색인이 없는 메타 로봇 ​​태그를 적용하는 것입니다.

robots.txt 파일을 512KB 미만으로 유지

Google은 현재 robots.txt 파일 크기를 500킬로바이트(512킬로바이트)로 제한하고 있습니다.

이는 512KB 이후의 모든 콘텐츠가 무시 될 수 있음 을 의미합니다.

Robots.txt 파일 크기

즉, 하나의 문자가 1바이트만 사용한다면 해당 파일 크기 제한(정확히 512,000자)에 도달하려면 robots.txt가 거대해야 합니다. 개별적으로 제외된 페이지에 덜 집중하고 와일드 카드로 제어할 수 있는 더 넓은 패턴에 더 집중하여 robots.txt 파일을 간결하게 유지하세요.

다른 검색 엔진이 robots.txt 파일에 허용되는 최대 파일 크기를 갖고 있는지 여부는 불분명합니다.

Robots.txt 예제

다음은 robots.txt 파일의 몇 가지 예입니다.

여기에는 SEO 대행사가 클라이언트용 robots.txt 파일에서 가장 많이 사용하는 지시문 조합이 포함됩니다. 그러나 명심하십시오. 영감을 주는 용도로만 사용됩니다. 요구 사항에 맞게 robots.txt 파일을 항상 사용자 지정해야 합니다.

모든 로봇이 모든 것에 액세스하도록 허용

이 robots.txt 파일은 모든 검색 엔진에 대한 금지 규칙을 제공하지 않습니다.

 User-agent: * Disallow:

즉, 검색 봇이 모든 것을 크롤링할 수 있습니다. 빈 robots.txt 파일이나 robots.txt가 전혀 없는 것과 같은 용도로 사용됩니다.

모든 로봇이 모든 것에 액세스하지 못하도록 차단

예제 robots.txt 파일은 모든 검색 엔진에 후행 슬래시 이후에 아무 것도 액세스하지 않도록 지시합니다. 즉, 전체 도메인:

 User-agent: * Disallow: /

간단히 말해서 이 robots.txt 파일은 모든 검색 엔진 로봇을 차단하고 귀하의 사이트가 검색 결과 페이지에 표시되지 않도록 할 수 있습니다.

모든 로봇이 하나의 파일을 크롤링하지 못하도록 차단

이 예에서는 모든 검색 봇이 특정 파일을 크롤링하지 못하도록 차단합니다.

 User-agent: * Disallow: /directory/this-is-a-file.pdf

모든 로봇이 하나의 파일 형식(doc, pdf, jpg)을 크롤링하지 못하도록 차단

인덱싱이 없기 때문에 'doc' 또는 'pdf'와 같은 파일은 메타 로봇 ​​"no-index" 태그를 사용하여 수행할 수 없습니다. 다음 지시문을 사용하여 특정 파일 형식이 인덱싱되는 것을 중지할 수 있습니다.

 User-agent: * Disallow: /*.doc$ Disallow: /*.pdf$ Disallow: /*.jpg$

개별 파일이 웹의 다른 곳에서 연결되어 있지 않은 한 해당 유형의 모든 파일의 색인을 해제하는 데 작동합니다.

Google이 여러 디렉토리를 크롤링하지 못하도록 차단

특정 봇 또는 모든 봇에 대해 여러 디렉터리의 크롤링을 차단할 수 있습니다. 이 예에서는 Googlebot이 두 개의 하위 디렉토리를 크롤링하지 못하도록 차단합니다.

 User-agent: Googlebot Disallow: /admin/ Disallow: /private/

참고로 bock을 사용할 수 있는 디렉토리 수에는 제한이 없습니다. 지시문이 적용되는 사용자 에이전트 아래에 각각을 나열하십시오.

Google이 매개변수화된 모든 URL을 크롤링하지 못하도록 차단

이 지시문은 패싯 탐색을 사용하는 웹사이트에 특히 유용하며 여기에서 많은 매개변수화된 URL을 생성할 수 있습니다.

 User-agent: Googlebot Disallow: /*?

이 지시문은 크롤링 예산이 동적 URL에서 소비되는 것을 막고 중요한 페이지의 크롤링을 최대화합니다. 나는 특히 검색 기능이 있는 전자 상거래 웹사이트에서 이것을 정기적으로 사용합니다.

모든 봇이 하나의 하위 디렉토리를 크롤링하는 것을 차단하지만 그 안에 있는 한 페이지는 크롤링할 수 있습니다.

때때로 크롤러가 사이트의 전체 섹션에 액세스하는 것을 차단하고 한 페이지는 액세스할 수 있도록 남겨두고 싶을 수 있습니다. 그렇게 하는 경우 '허용' 및 '비허용' 지시문을 다음 조합으로 사용하십시오.

 User-agent: * Disallow: /category/ Allow: /category/widget/

하나의 특정 페이지나 파일을 제외한 전체 디렉토리를 크롤링하지 않도록 검색 엔진에 지시합니다.

WordPress용 Robots.txt

이것은 내가 WordPress robots.txt 파일에 대해 권장하는 기본 구성입니다. WordPress 웹 사이트에서 불필요한 cruft를 생성할 수 있는 관리자 페이지 및 태그 및 작성자의 URL 크롤링을 차단합니다.

 User-Agent: * Allow: /wp-content/uploads/ Disallow: /wp-content/plugins/ Disallow: /wp-admin/ Disallow: /readme.html Disallow: /refer/ Disallow: /tag/ Disallow: /author/ Disallow: /404-error/ Sitemap: http://www.example.com/post-sitemap.xml Sitemap: http://www.example.com/page-sitemap.xml

이 robots.txt 파일은 대부분의 WordPress 웹사이트에서 잘 작동하지만 물론 항상 자신의 요구 사항에 맞게 조정해야 합니다.

Robots.txt 파일에 오류가 있는지 감사하는 방법

제 시간에는 기술 SEO의 다른 어떤 측면보다 robots.txt 파일에서 순위에 영향을 미치는 오류를 더 많이 보았습니다. 잠재적으로 충돌할 수 있는 지침이 너무 많기 때문에 문제가 발생할 수 있고 실제로 발생합니다.

따라서 robots.txt 파일의 경우 문제를 주시해야 합니다.

고맙게도 Google Search Console의 '범위' 보고서는 robots.txt 문제를 확인하고 모니터링할 수 있는 방법을 제공합니다.

또한 Google의 멋진 Robots.txt 테스트 도구를 사용하여 실제 로봇 파일 내의 오류를 확인하거나 새 robots.txt 파일을 배포하기 전에 테스트할 수 있습니다.

Robots.txt 테스트 도구

가장 일반적인 문제, 의미 및 해결 방법을 다루면서 마무리하겠습니다.

제출된 URL이 robots.txt에 의해 차단됨

이 오류는 제출된 사이트맵의 URL 중 하나 이상이 robots.txt에 의해 차단되었음을 의미합니다.

제출된 URL이 robots.txt에 의해 차단됨

올바르게 설정된 사이트맵 에는 검색 엔진에서 색인을 생성하려는 URL만 포함 되어야 합니다. 따라서 색인이 생성되지 않았거나 정규화되거나 리디렉션된 페이지가 포함되어서는 안 됩니다.

이러한 모범 사례를 따랐다면 사이트맵에 제출된 페이지가 robots.txt에 의해 차단 되어서는 안 됩니다.

적용 범위 보고서에 "robots.txt에 의해 차단된 제출 URL"이 표시되면 영향을 받는 페이지를 조사한 다음 robots.txt 파일을 전환하여 해당 페이지에 대한 차단을 제거해야 합니다.

Google의 robots.txt 테스터를 사용하여 콘텐츠를 차단하는 지시문을 확인할 수 있습니다.

Robots.txt에 의해 차단됨

이 "오류"는 현재 Google 색인에 없는 robots.txt에 의해 차단된 페이지가 있음을 의미합니다.

색인이 생성되었지만 robots.txt 경고에 의해 차단됨

이 콘텐츠에 유틸리티가 있고 색인을 생성해야 하는 경우 robots.txt에서 크롤링 블록을 제거하세요.

짧은 경고:

"robots.txt에 의해 차단됨"이 반드시 오류는 아닙니다. 사실 원하는 결과일 수도 있습니다.

예를 들어 Google 색인에서 제외하려는 robots.txt의 특정 파일 을 차단했을 수 있습니다. 반면에 색인을 생성하지 않을 의도로 특정 페이지 의 크롤링을 차단한 경우 크롤링 차단을 제거하고 로봇의 메타 태그를 대신 사용하는 것이 좋습니다.

이것이 Google 색인에서 콘텐츠를 제외하는 유일한 방법입니다.

색인이 생성되었지만 Robots.txt에 의해 차단됨

이 오류는 robots.txt에 의해 차단된 일부 콘텐츠가 여전히 Google에서 색인이 생성되어 있음을 의미합니다.

콘텐츠가 웹의 다른 곳에서 연결되어 있기 때문에 Googlebot이 여전히 콘텐츠를 검색할 수 있는 경우에 발생합니다. 간단히 말해서 Googlebot은 콘텐츠 크롤링을 감지한 다음 웹사이트의 robots.txt 파일을 방문하기 전에 색인을 생성합니다. 여기에서 허용되지 않는 지시문이 표시됩니다.

그때는 너무 늦었습니다. 그리고 색인이 생성됩니다.

robots.txt에 의해 차단됨

이 집을 드릴 수 있습니다.

Google 검색 결과에서 콘텐츠를 제외하려는 경우 robots.txt는 올바른 솔루션이 아닙니다.

크롤링 블록을 제거하고 메타 로봇 ​​색인 없는 태그를 사용하여 색인 생성을 방지하는 것이 좋습니다.

반대로 이 콘텐츠를 실수로 차단하여 Google 색인에 유지하려면 robots.txt에서 크롤링 차단을 제거하고 그대로 두십시오.

이렇게 하면 Google 검색에서 콘텐츠의 가시성을 높이는 데 도움이 될 수 있습니다.

마지막 생각들

Robots.txt는 웹사이트 콘텐츠의 크롤링 및 인덱싱을 개선하는 데 사용할 수 있으며, 이는 SERP에서 더 잘 보이도록 도와줍니다.

효과적으로 사용하면 웹사이트에서 가장 중요한 텍스트입니다. 그러나 부주의하게 사용하면 웹사이트 코드에서 아킬레스건이 됩니다.

좋은 소식은 사용자 에이전트에 대한 기본적인 이해와 몇 가지 지침만 있으면 더 나은 검색 결과를 얻을 수 있다는 것입니다.

유일한 질문은 robots.txt 파일에 어떤 프로토콜을 사용할 것입니까?

아래 의견에 알려주십시오.