사이트맵 제작 및 제출하기

이 페이지에서는 사이트맵을 만들고 Google에서 사용할 수 있도록 하는 방법을 설명합니다. 여기에서 사이트맵에 관해 자세히 알아보기

  1. Google에서 크롤링해야 하는 사이트의 페이지를 결정하고 각 페이지의 표준 버전을 선택합니다.
  2. 사용할 사이트맵 형식을 결정합니다. 직접 사이트맵을 만들거나 다양한 타사 도구 중에 선택하여 사이트맵을 생성할 수 있습니다.
  3. 사이트맵을 robots.txt에 추가하거나 Search Console에 직접 제출하여 Google에서 사용할 수 있도록 합니다.

사이트맵 형식

Google은 다음과 같은 몇 가지 사이트맵 형식을 지원합니다. Google은 모든 형식의 표준 사이트맵 프로토콜을 예상합니다. Google은 현재 사이트맵에서 <priority> 속성을 사용하지 않습니다.

형식과 관계없이 사이트맵은 1개당 50MB(압축하지 않은 파일 기준)와 URL 50,000개로 제한됩니다. 파일이 더 크거나 URL이 더 많은 경우, 목록을 여러 개의 사이트맵으로 나눠야 합니다. 사이트맵 색인 파일(사이트맵 목록과 연결된 파일)을 만들어 Google에 색인 파일 하나만 제출하는 방법도 있습니다(선택사항). 즉, Google에 여러 개의 사이트맵을 제출하거나 사이트맵 색인 파일을 제출하면 됩니다.

XML

다음은 단일 URL 위치를 포함하는 매우 기본적인 XML 사이트맵입니다.

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/foo.html</loc>
<lastmod>2018-06-04</lastmod>
</url>
</urlset>

sitemaps.org에서 복잡한 예와 전체 문서를 확인할 수 있습니다.

대체 언어 페이지를 지정하는 사이트맵뉴스, 이미지, 동영상 파일 사이트맵의 예를 확인해 보세요.

RSS, mRSS, Atom 1.0

RSS 또는 Atom 피드가 블로그에 있는 경우 피드의 URL을 사이트맵으로 제출할 수 있습니다. 대부분의 블로그 소프트웨어에서 대신 피드를 생성할 수 있지만, 이 피드는 최근 URL에 대한 정보만 제공한다는 점을 염두에 두시기 바랍니다.

  • Google에서는 RSS 2.0 및 Atom 1.0 피드를 사용할 수 있습니다.
  • mRSS(media RSS) 피드를 사용하여 사이트의 동영상 콘텐츠에 대한 세부정보를 Google에 제공할 수 있습니다.

텍스트

사이트맵에 웹페이지 URL만 포함되어 있다면 Google에 한 줄에 하나의 URL을 포함하는 간단한 텍스트 파일을 제공할 수 있습니다. 예:

http://www.example.com/file1.html
http://www.example.com/file2.html
        

텍스트 파일 사이트맵을 위한 가이드라인:

  • UTF-8 인코딩을 사용하여 파일을 인코딩합니다.
  • 사이트맵 파일에 URL이 아닌 다른 항목을 넣으면 안 됩니다.
  • .txt 확장자(예: sitemap.txt)만 있다면 텍스트 파일의 이름을 원하는 대로 정할 수 있습니다.

Google Sites

Google Sites를 사용하여 사이트를 만들고 인증하면 Google Sites에서 자동으로 사이트맵을 생성합니다. 사이트맵을 수정할 수는 없지만, 사이트맵 보고서 데이터를 보려면 Google에 사이트맵을 제출하면 됩니다. 하나의 하위 디렉터리에 1,000개 이상의 페이지가 있으면 사이트맵이 제대로 표시되지 않을 수 있습니다.

  • 사이트가 Google Sites에서 호스팅되는 경우 사이트맵 URL은 http://sites.google.com/site/yoursitename/system/feeds/sitemap입니다.
  • Google Workspace를 사용하여 사이트를 만든 경우 사이트맵 URL은 https://sites.google.com/yourdomain/yoursitename/system/feeds/sitemap입니다.

추가 미디어 유형의 사이트맵 확장 구문

Google에서는 다음 미디어 유형에 확장된 사이트맵 구문을 지원합니다. 색인 생성을 개선하기 위해 이러한 확장된 구문을 사용하여 동영상 파일, 이미지 및 사이트에서 파싱하기 어려운 기타 콘텐츠를 설명합니다.

일반 사이트맵 가이드라인

  • 일관성 있는 정규화된 URL을 사용합니다. Google에서는 표시된 그대로 URL을 크롤링합니다. 예를 들어, 사이트가 https://www.example.com/에 있다면 URL을 https://example.com/(www 누락) 또는 ./mypage.html(상대 URL)로 지정해서는 안 됩니다.
  • 사이트맵은 사이트의 어디에나 게시할 수 있지만 사이트맵은 상위 디렉터리의 하위 항목에만 영향을 줍니다. 따라서 사이트 루트에 게시된 사이트맵은 사이트의 모든 파일에 영향을 줄 수 있으므로 여기에 게시하는 것을 권장합니다.
  • URL의 중복 크롤링을 줄이기 위해 사이트맵에 URL의 세션 ID가 포함되지 않아야 합니다.
  • hreflang 주석을 사용하여 URL의 대체 언어 버전을 Google에 알립니다.
  • 사이트맵 파일은 UTF-8로 인코딩되어야 하며 적절하게 URL을 이스케이프 처리해야 합니다.
  • 대형 사이트맵을 분할하여 여러 개의 소형 사이트맵으로 만들 수 있습니다. 사이트맵은 최대 50,000개의 URL을 포함할 수 있으며 압축하지 않은 상태에서 50MB를 초과하면 안 됩니다. 사이트맵 색인 파일을 사용하여 모든 사이트맵을 표시하고 개별 사이트맵 대신 이 하나의 파일을 Google에 제출합니다.
  • 사이트맵에는 표준 URL만 표시합니다. 페이지의 버전이 두 개인 경우 검색결과에 표시할 버전만 사이트맵에 나열합니다. 두 버전의 사이트가 있는 경우(예: www 및 www가 아닌 사이트) 선호하는 사이트를 결정하여 사이트맵을 게시한 후 다른 사이트에는 rel=canonical 또는 리디렉션을 추가합니다.
  • 페이지의 모바일 버전과 데스크톱 버전 URL이 다르다면 사이트맵에서 한 버전에만 연결하는 것이 좋습니다. 하지만, 두 URL을 모두 가리키도록 하려면 URL에 주석을 추가하여 데스크톱 버전과 모바일 버전을 표시합니다.
  • 사이트맵 확장 구문을 사용하여 동영상, 이미지, 뉴스와 같은 추가 미디어 유형에 연결할 수 있습니다.
  • 다른 언어 또는 지역의 대체 페이지가 있다면 사이트맵 또는 HTML 태그로 hreflang을 사용하여 대체 URL을 표시할 수 있습니다.
  • 영숫자 및 라틴어 이외의 문자. 사이트맵 파일은 UTF-8로 인코딩해야 합니다. 일반적으로 파일을 저장할 때 인코딩을 지정할 수 있습니다. 모든 XML 파일과 마찬가지로 모든 데이터 값(URL 포함)은 아래 표에 있는 문자에 엔티티 이스케이프 코드를 사용해야 합니다. 사이트맵에는 ASCII 문자만 포함할 수 있습니다. 상위 ASCII 문자나 특정 제어 코드, *{} 등의 특수 문자는 사용하면 안 됩니다. 이러한 문자가 포함된 사이트맵 URL을 추가하면 오류가 발생합니다.
    문자 이스케이프 코드
    앰퍼샌드 & &amp;
    작은따옴표 ' &apos;
    큰따옴표 " &quot;
    초과 > &gt;
    미만 < &lt;
    또한 사이트맵 URL을 포함한 모든 URL은 URL이 위치하고 이스케이프된 웹 서버에서 쉽게 읽을 수 있도록 인코딩되어야 합니다. 그러나 스크립트, 도구 또는 로그 파일을 무엇이든 사용하여(URL을 직접 입력하는 경우 제외) URL을 작성하면 대개 인코딩 작업이 알아서 완료됩니다. 사이트맵을 제출했는데 Google에서 일부 URL을 찾을 수 없다는 오류가 표시된다면 URL이 RFC-3986 표준(URI의 경우), RFC-3987 표준(IRI의 경우)과 XML 표준을 따르는지 확인하세요.

    다음은 ASCII 문자가 아닌 문자를 사용하는 문자(ü)와 엔티티 이스케이프 처리가 필요한 문자(&)를 사용하는 URL 예입니다.
    http://www.example.com/ümlat.html&q=name
    다음은 동일한 URL을 ISO-8859-1로 인코딩(호스팅하는 서버에서 동일한 인코딩 방식 사용)하고 URL을 이스케이프 처리한 예입니다.
    http://www.example.com/%FCmlat.html&q=name
    다음은 동일한 URL을 UTF-8로 인코딩(호스팅하는 서버에서 동일한 인코딩 방식 사용)하고 URL을 이스케이프 처리한 예입니다.
    http://www.example.com/%C3%BCmlat.html&q=name
    다음은 동일한 URL을 엔티티 이스케이프 처리한 예입니다.
    http://www.example.com/%C3%BCmlat.html&amp;q=name
  • 사이트맵은 어떤 페이지가 중요한지 Google에 알려 주는 제안입니다. Google에서는 사이트맵에 있는 모든 URL을 크롤링한다고 보장하지 않습니다.
  • Google에서는 <priority><changefreq> 값을 무시합니다.
  • Google에서는 <lastmod> 값이 일관되고 정확성을 검증(예: 페이지의 마지막 수정사항과 비교)할 수 있는 경우에 이 값을 사용합니다.
  • 사이트맵의 URL 위치는 중요하지 않습니다. Google에서는 사이트맵에 표시된 순서대로 URL을 크롤링하지 않습니다.

Google에 사이트맵 제공하기(Google에 사이트맵 제출)

Google에서는 사이트가 크롤링될 때마다 사이트맵을 확인하지는 않습니다. 사이트맵을 처음 발견했을 때만 확인하며 이후에는 사이트맵을 변경했다는 사실이 핑된 경우에만 확인합니다. 사이트맵을 새롭게 변경했거나 업데이트했을 때만 Google에 알려야 합니다. 변경되지 않은 사이트 맵을 여러 번 제출하거나 핑하지 마시기 바랍니다.

Google에 사이트맵을 제공하는 데 몇 가지 방법이 있습니다.

  • Search Console 사이트맵 도구를 사용하여 Google에 사이트맵을 제출합니다.
  • robots.txt
    파일의 아무 곳에나 다음 줄을 삽입Sitemap: http://example.com/sitemap_location.xml하여 사이트맵 경로를 지정합니다.
  • 'ping' 서비스를 사용하여 Google에 사이트맵 크롤링을 요청합니다. 다음과 같은 HTTP GET 요청을 전송합니다.
    http://www.google.com/ping?sitemap=<complete_url_of_sitemap>
    예를 들면 다음과 같습니다.
    http://www.google.com/ping?sitemap=https://example.com/sitemap.xml

사이트맵 문제 해결하기

사이트맵 문제 해결 가이드를 참고하세요.