홈으로 돌아가기

Robots.txt와 sitemap.xml: 인덱싱 설정

이 기사는 검색 엔진의 크롤링 최적화를 위한 robots.txt와 sitemap.xml 설정을 설명합니다. 지시문, 구문, 배치, 검증, 통합이 다뤄집니다. Google과 Yandex를 위한 예제가 제공되며, 미디어 확장도 포함됩니다.

크롤링 최적화: robots.txt + sitemap.xml
Advertisement 728x90

최적 크롤링을 위한 robots.txt와 sitemap.xml 설정 가이드

robots.txt 파일의 한 글자 오류로 인해 웹사이트의 핵심 섹션이 차단되어 트래픽이 급감할 수 있습니다. 최근 한 프로젝트에서는 파일 오류로 인해 제품 카탈로그 디렉토리가 검색 엔진 크롤러에게 차단되었고, 2주 만에 유기적 트래픽이 1/3로 줄었습니다. Robots.txt는 크롤러 접근을 관리하고, sitemap.xml은 스캔 우선순위를 설정합니다. 이 두 파일은 Google과 Yandex에서의 인덱싱 효율성을 결정합니다.

robots.txt의 지시어와 문법

Robots.txt는 사이트 루트에 위치하며 Googlebot, YandexBot 등 크롤러에 대한 지침을 포함합니다. 주요 지시어:

  • User-agent: 봇을 지정합니다. User-agent: * — 모든 봇, User-agent: Googlebot — Google만.
  • Disallow: 경로를 금지합니다. Disallow: /admin/은 디렉토리를 차단하고, Disallow: /search?는 검색 매개변수가 있는 URL을 차단합니다.
  • Allow: 차단된 디렉토리 내에서 허용합니다. 예시:
User-agent: *
Disallow: /catalog/
Allow: /catalog/main-page/
  • Sitemap: 사이트맵 링크, User-agent 블록 외부에 작성합니다.

Disallow 끝의 슬래시는 디렉토리를 나타냅니다. 슬래시 없음—접두사가 있는 모든 URL. Robots.txt는 인덱싱을 완전히 차단하지 않습니다: 외부 링크로 인해 경고와 함께 페이지가 인덱스에 추가될 수 있습니다. Noindex를 원한다면 메타 태그나 인증을 사용하세요.

Google AdInline article slot

기본 robots.txt 예시:

User-agent: *
Disallow: /admin/
Disallow: /cart/
Disallow: /search?
Disallow: /*?sort=
Disallow: /*?filter=
Allow: /
Sitemap: https://site.ru/sitemap.xml

이 템플릿은 서비스 섹션과 필터 매개변수를 차단합니다.

지시어 지원 차이

| 지시어 | Google | Yandex |

Google AdInline article slot

|--------------|--------|--------|

| User-agent | ✅ | ✅ |

| Disallow | ✅ | ✅ |

Google AdInline article slot

| Allow | ✅ | ✅ |

| Sitemap | ✅ | ✅ |

| Host | ❌ | ✅ |

| Crawl-delay | ❌ | ✅ |

| Clean-param | ❌ | ✅ |

Yandex의 Host 지시어는 기본 미러를 설정합니다: Host: https://site.ru. Google은 이를 무시합니다—Search Console을 사용하세요.

robots.txt 배치 및 검증

  • 텍스트 편집기(VS Code, Notepad++)에서 robots.txt 파일 생성.
  • 루트에 업로드: https://site.ru/robots.txt.
  • CMS별 방법:

- WordPress: Yoast SEO 또는 FTP.

- Bitrix: 관리자 패널 파일 관리자.

- Tilda/Wix: 패널 설정.

  • 접근성 확인: 브라우저에서 URL 열기(404/500 오류가 아닌 텍스트 표시).
  • 테스트: Google Search Console(크롤링), Yandex.Webmaster(Robots.txt 분석).

문법 오류는 줄 무시나 예측 불가능한 동작을 초래합니다.

sitemap.xml 구조

Sitemap.xml은 크롤 우선순위를 위한 중요 URL 목록입니다. 100페이지 이상, 자주 업데이트되거나 고립된 페이지가 있는 사이트에 유용합니다.

기본 구조:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://site.ru/</loc>
    <lastmod>2026-01-15</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>
</urlset>

태그:

  • loc: 필수 URL.
  • lastmod: 실제 수정 날짜.
  • changefreq: 빈도(일별/주별; Google은 무시, Yandex는 고려).
  • priority: 순서를 위한 0.0–1.0 값.

제한: 50,000 URL, 50 MB. 초과 시—사이트맵 인덱스:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <sitemap>
    <loc>https://site.ru/sitemap-pages.xml</loc>
  </sitemap>
</sitemapindex>

sitemap.xml 생성 방법

  • CMS/플러그인: WordPress(Yoast), Bitrix(마케팅). 자동 업데이트되지만 불필요한 URL 확인 필요.
  • 온라인 생성기: 정적 사이트용, 수동 업데이트.
  • 스크립트: SPA용(Next.js + next-sitemap). 빌드 시 생성.

루트에 배치하거나 robots.txt에 지정합니다.

파일 통합

  • robots.txt에 추가: Sitemap: https://site.ru/sitemap.xml.
  • Google Search Console(사이트맵)과 Yandex.Webmaster(인덱싱)에 제출.
  • 검증: 사이트맵의 URL이 Disallow에 없어야 하며, 상태 200 OK여야 합니다.

고급 사이트맵

미디어용:

이미지:

<url>
  <loc>https://site.ru/article/</loc>
  <image:image>
    <image:loc>https://site.ru/images/photo.jpg</image:loc>
    <image:title>설명</image:title>
  </image:image>
</url>

비디오 (일부):

<url>
  <loc>https://site.ru/video-page/</loc>
  <video:video>
    <video:thumbnail_loc>https://site.ru/thumb.jpg</video:thumbnail_loc>
  </video:video>
</url>

Google 이미지와 Yandex.이미지에서 인덱싱을 개선합니다.

핵심 요약

  • Robots.txt는 크롤 예산을 절약하지만 noindex를 대체하지 않습니다.
  • Sitemap은 새 페이지 발견을 가속화하고 사이트 구조를 정리합니다.
  • 항상 충돌 확인: 사이트맵의 URL은 접근 가능해야 합니다.
  • Google/Yandex의 지시어 차이(Host, Clean-param) 고려.
  • 대규모 사이트의 경우 사이트맵 인덱스와 미디어 확장 사용.

— Editorial Team

Advertisement 728x90

다음 읽기