Robots.txt 설정 및 가이드

robots.txt 는 웹사이트의 검색 엔진 최적화를 위한 기본입니다.

이 파일 어떻게 설정이 되었는지에 따라 사용자들이 볼 수 있는 사이트의 상태가 변경하기 때문에 잘 설정하는 것이 중요합니다.

이번 시간에는 이 파일이 무엇이고 어떻게 설정해야 하는지 알아보도록 하겠습니다.

1. robots.txt란 무엇인가?

정의: robots.txt는 검색엔진 크롤러가 사이트의 어떤 URL을 크롤링해도 되는지, 또는 크롤링하지 말아야 하는지를 알려주는 텍스트 파일입니다. 사이트의 루트(https://example.com/robots.txt)에 두어 모든 크롤러가 접근 가능하도록 합니다.

목적: 서버의 과도한 부하를 방지하거나, 중복·저품질 페이지 크롤링을 제한하여 크롤러의 시간과 사이트의 크롤링 예산을 효율적으로 사용하기 위해 사용됩니다.

주의: robots.txt는 페이지를 검색 결과에서 완전히 숨기기 위한 도구가 아닙니다. 다른 사이트에서 해당 페이지를 링크하면 URL이 검색엔진에 노출될 수 있습니다. 민감한 페이지는 noindex 메타 태그나 비밀번호 보호로 차단해야 합니다.


2. 웹사이트에 robots.txt파일 만들어서 넣기

Google Search Central에서는 robots.txt 파일을 만들 때 아래 네 단계를 제시합니다:
웹사이트를 제작할 때 이미 robots.txt파일을 만들어서 넣어드렸기 때문에 아래 내용은 참고만 하셔도 됩니다.

  1. 파일 생성: 일반 텍스트 편집기(메모장, TextEdit 등)로 robots.txt라는 이름의 파일을 만듭니다. 워드 프로세서(워드, 한글 등)는 사용하지 않습니다.
  2. 규칙 추가: 크롤러에게 적용할 User-agent, 허용/차단할 경로를 AllowDisallow 지시어로 작성합니다.
  3. 서버에 업로드: 완성된 파일을 사이트의 루트 디렉터리에 업로드합니다. 예를 들어 https://ezinterior.life/robots.txt와 같이 접근 가능해야 합니다.
  4. 테스트: 크롬 시크릿 모드 등에서 https://yourdomain.com/robots.txt에 접속해 내용이 보이는지 확인합니다.
    Google Search Console의 robots.txt 보고서로 구문 오류를 점검할 수 있습니다.

2.1 규칙 작성 시 유의점

  • 그룹 구조: robots.txt는 하나 이상의 “그룹”으로 구성되며, 각 그룹은 User-agent로 시작하고 그 다음 줄부터 Allow 또는 Disallow 규칙을 적습니다.
  • 대소문자 구분: Disallow: /File.aspDisallow: /file.asp는 다른 URL로 인식됩니다.
  • 주석: # 이후의 내용은 주석으로 간주되어 무시됩니다.
  • 와일드카드: *$를 이용해 경로 패턴을 지정할 수 있습니다. 예를 들어 Disallow: /*.gif$.gif 파일을 모두 차단합니다.
  • Sitemap 지시어: Sitemap: 줄에 사이트맵의 전체 URL을 추가해 크롤러가 사이트를 더 잘 이해하도록 할 수 있습니다.

3. robots.txt 예시 및 활용

robots.txt

1. 기본 차단 예시
아래는 전체 사이트를 모든 크롤러에게 차단하는 예입니다. 단, 구글 검색결과에는 여전히 URL이 표시될 수 있으니 참고용으로만 사용하세요.

User-agent: * Disallow: /

2. 특정 폴더 차단 예시
사이트의 특정 디렉터리(calendar, junk, books/fiction/contemporary)를 모든 크롤러에게 차단하는 예입니다.

User-agent: * Disallow: /calendar/ Disallow: /junk/ Disallow: /books/fiction/contemporary/

3. 특정 크롤러만 허용 예시
뉴스 검색용 Googlebot만 사이트 전체를 크롤링하도록 허용하고, 다른 모든 크롤러는 차단합니다.

User-agent: Googlebot-news Allow: / User-agent: * Disallow: /

4. 블로그/워드프레스용 기본 예시
워드프레스 블로그에서 일반적으로 사용하는 설정은 다음과 같습니다. 주요 콘텐츠는 허용하되 관리자 영역 등은 차단합니다.

User-agent: * Disallow: /wp-admin/ Disallow: /wp-login.php Allow: /wp-admin/admin-ajax.php # 사이트맵 위치 선언 Sitemap: https://ezinterior.life/sitemap_index.xml
  • Disallow: /wp-admin/: 관리자 페이지 전체를 차단합니다.
  • Disallow: /wp-login.php: 로그인 페이지를 차단해 스팸 크롤러의 접근을 줄입니다.
  • Allow: /wp-admin/admin-ajax.php: 워드프레스에서 비동기 요청을 처리하는 파일은 허용합니다.
  • Sitemap:: Yoast SEO나 Rank Math 같은 플러그인이 생성한 사이트맵 URL을 지정합니다.

이 예시는 대부분의 검색엔진과 호환되며, 사이트맵 URL을 명시해 크롤러가 중요한 페이지를 더 빠르게 발견하도록 돕습니다.


4. 내 사이트에 robots.txt 파일 적용하는 방법

간혹 페이지에 robot.txt가 설정이 되어 있는지 모르는 경우가 있습니다.

이럴 때는 도메인에 /robots.txt 마지막에 입력한 후 검색을 해보면 나옵니다.

  • 텍스트 파일 생성: 위 예시처럼 내용을 작성하고 UTF‑8 형식으로 저장합니다(robots.txt).
  • 호스팅에 업로드: FTP 클라이언트(FileZilla 등)나 호스팅 제공 업체의 파일 매니저를 사용하여 robots.txt 파일을 사이트 루트(/public_html 등)에 업로드합니다.
  • 접근 테스트: 브라우저에서 https://ezinterior.life/robots.txt를 열어 제대로 표시되는지 확인합니다.
  • 검증 도구 사용: Google Search Console의 robot 파일 테스트 도구(Support 문서에서 제공)을 이용해 규칙이 올바른지 확인하고, 필요하면 수정합니다.
  • 적용 확인: 검색엔진은 정기적으로 robot 파일을 다시 읽습니다. 변경사항을 즉시 반영하고 싶다면 Google Search Console의 “robots.txt 업데이트 제출” 기능을 사용하세요

5. 오류 해결 팁

  • 접근 불가 오류: robots.txt URL이 404를 반환하거나 사이트가 리디렉션을 반복하는 경우, 파일 위치가 올바른지 확인하고 서버의 캐싱 설정을 점검합니다.
  • 구문 오류: Search Console에서 “Syntax error”가 발생하면 공백, 대소문자, 경로 구분(\ vs /) 등을 검토합니다. 줄 끝에 불필요한 문자가 없는지도 확인하세요.
  • 효과가 없는 차단: robots.txt로 차단했지만 페이지가 검색결과에 노출될 수 있습니다. 해당 페이지가 외부 사이트에서 링크되면 URL은 색인될 수 있으므로, 완전한 차단이 필요하다면 noindex 메타 태그나 비밀번호 보호를 사용하세요.

6. 참고할 만한 자료

블로그 robots.txt설정 방법과 설명
바로가기
– robots.txt 파일의 기본 구조와 워드프레스에서 FTP로 업로드하는 방법을 스크린샷과 함께 설명한 한국어 블로그입니다.

robots.txt생성 및 활용 팁
바로가기
– robots.txt 역할, 예시, 주의사항 등을 한국어로 자세히 설명하고 있어 초보자가 참고하기 좋습니다.

You May Also Like