soma0sd

코딩 & 과학 & 교육

티스토리 블로그를 위한 XML 사이트맵 양식

반응형

티스토리의 경우 카카오와 다음에서는 자동으로 검색엔진에 웹문서를 등록합니다. 하지만 네이버와 구글은 각각 네이버 웹마스터 도구구글 서치콘솔에 사이트를 등록해야 검색이 됩니다.

우선은 해당 웹마스터 도구에 RSS를 등록해서 해결할 수 있습니다. 그러나 티스토리가 제공하는 RSS는 50개의 최신글만 지원하며 51번째 글부터는 최신 정보 반영이 안됩니다. 저는 이 문제를 사이트맵으로 해결하려고 합니다. 여기서는 기본적인 양식을 살펴보고 차후에 자동으로 티스토리 블로그를 크롤링하여 사이트맵을 만드는 프로그램을 코딩할 예정입니다.

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>

구글에서 제공하는 사이트맵 예시입니다. 태그 단위로 이루어져 있으며 태그와 태그 사이에 데이터가 들어갑니다. 하나의 페이지는 <url>태그로 묶입니다. 그 안에 검색엔진을 위한 여러 메타정보가 들어가지만 네이버나 구글이나 페이지 위치를 알리는<loc>과 마지막 수정시간인 <lastmod>만 쓴다고 합니다. (구글 오피셜은 확인해봤는데 네이버는 오피셜은 찾지 못했습니다.)

사이트맵은 ASCII문자만 허용하므로 사이트 주소에 한글을 사용하는 경우 URL 이스케이프를 적절하게 활용해서 페이지 위치를 기록해야 합니다.

<lastmod>의 일자와 시간은 W3C 표준을 따릅니다. 일자까지 기록하는 경우 YYYY-MM-DD형식으로, 예를 들어 2019-05-15로 씁니다. 티스토리는 http 헤더에 포스팅 수정시간이 나타나지 않으므로 자동으로 생성하는 경우에는 사이트맵 제작시간을 기록해야 할듯 합니다.

티스토리 블로그의 사이트맵을 만들 때 주의사항

자동으로 사이트맵을 생성하는 서비스들은 페이지 위치에 매개변수도 포함하여 검색엔진이 중복으로 처리해버릴 위험이 있습니다. 가령 제 블로그의 https://soma0sd.tistory.com/55?category=862301문서와 https://soma0sd.tistory.com/55문서는 같은 내용이라 중복으로 판단하고 아예 색인에서 빼버릴 수 있습니다.

반응형
태그:

댓글

End of content

No more pages to load