
✍️
이전에 작성한 구글서치콘솔과 구글애널리틱스에 이어서 사이트맵에 대해 조금 더 조사를 해서 정리한 내용이다.
우리 사이트에 사이트맵을 작성, 적용하기 전에 사이트맵에 대해서 알아보자! 😀
웹사이트의 페이지, 동영상, 기타 파일과 각 파일의 관계에 대한 정보를 검색 엔진에게 알려주는 파일이다.
사이트맵은 검색 엔진이 사이트를 더 효과적으로 크롤링하도록 돕기 위해 웹사이트 개발자에 의해 생성되며, 사이트의 구조를 명확하게 설명하여 검색 엔진 최적화(SEO)에 중요한 역할을 한다.
사이트맵은 특히 대형 웹사이트나 새로운 페이지가 자주 생성되거나, 웹사이트 내 일부 페이지가 자연스러운 내비게이션을 통해 쉽게 발견되지 않는 경우, 또는 웹사이트에 풍부한 미디어 콘텐츠(ex. 이미지, 비디오)가 있을 때 특히 중요하다. 이러한 경우 사이트맵은 검색 엔진이 웹사이트의 콘텐츠를 더 완전하고 효과적으로 색인화하는 데 도움을 준다.
주로 검색 엔진용으로 사용되며, 웹사이트의 모든 페이지의 URL을 포함하고 있다. 이 형식은 검색 엔진이 사이트의 구조를 이해하고 모든 페이지를 찾아내서 색인화할 수 있도록 돕는다.
활용도
장점
단점
예시)
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://www.example.com/</loc>
<lastmod>2023-01-01</lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<url>
<loc>http://www.example.com/about.html</loc>
<lastmod>2023-01-10</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>http://www.example.com/contact.html</loc>
<lastmod>2023-01-15</lastmod>
<changefreq>yearly</changefreq>
<priority>0.5</priority>
</url>
<!-- 추가적인 페이지 URL들을 계속 나열 -->
</urlset>
<loc> : 페이지의 URL<lastmod> : 해당 페이지가 마지막으로 수정된 날짜<changefreq> : 페이지의 변경 빈도<priority> : 웹사이트 내 다른 페이지에 대한 상대적인 중요도👉 sitemaps.org 에서 복잡한 예와 전체 문서를 확인 할 수 있다.🧐
📌 CMS(Content Management System)이란?
CMS는 콘텐츠 관리 시스템을 의미하며, 웹사이트의 콘텐츠를 생성, 관리, 수정, 게시하는 데 사용되는 소프트웨어 응용 프로그램 관련 프로그램 모음을 말한다. 웹 콘텐츠를 쉽게 관리할 수 있도록 설계되어 있으며, 주로 웹사이트를 유지보수하는데 기술적인 배경지식이 없는 사용자를 대상으로 한다. (ex. WordPress)
RSS, mRSS, Atom 1.0 사이트맵은 XML 사이트맵과 구조는 비슷하지만, CMS에서 자동으로 생성되므로 가장 간편하게 제공할 수 있다.
활용도
장점
단점
✍️ 각각의 예시코드는 어떤 느낌인지만 알고 넘어가자!
RSS 예시)
<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>Your Website Title</title>
<link>http://www.yourwebsite.com</link>
<description>This is an example of an RSS feed</description>
<item>
<title>Post Title</title>
<link>http://www.yourwebsite.com/post-url</link>
<description>This is a summary of the post</description>
<pubDate>Tue, 10 Aug 2021 04:00:00 GMT</pubDate>
</item>
<!-- Additional item elements here -->
</channel>
</rss>
mRSS (media RSS) 예시)
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
<channel>
<title>Your Website Title</title>
<link>http://www.yourwebsite.com</link>
<description>This is an example of a media RSS feed</description>
<item>
<title>Media Post Title</title>
<link>http://www.yourwebsite.com/media-post-url</link>
<description>This is a summary of the media post</description>
<media:content url="http://www.yourwebsite.com/media.mp4" type="video/mp4">
<media:title type="plain">Media Title</media:title>
<media:description type="plain">Description of the media</media:description>
<media:thumbnail url="http://www.yourwebsite.com/thumbnail.jpg" />
</media:content>
</item>
<!-- Additional item elements here -->
</channel>
</rss>
Atom 1.0 예시)
<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>Your Website Title</title>
<link href="http://www.yourwebsite.com" />
<updated>2021-08-10T04:00:00Z</updated>
<author>
<name>Your Name</name>
</author>
<id>http://www.yourwebsite.com</id>
<entry>
<title>Entry Title</title>
<link href="http://www.yourwebsite.com/entry-url" />
<id>http://www.yourwebsite.com/entry-url</id>
<updated>2021-08-10T04:00:00Z</updated>
<summary>This is a summary of the entry.</summary>
</entry>
<!-- Additional entry elements here -->
</feed>
📌 피드(feed) 형식이란?
웹 콘텐츠의 업데이트를 구독하고, 자동으로 받아볼 수 있도록 하는 데이터 형식을 말한다. 이러한 피드는 주로 XML(Extensible Markup Language)을 기반으로 하며, 콘텐츠가 변경되거나 새로운 콘텐츠가 추가될 때마다 이를 구독자에게 신속하게 전달할 수 있는 구조로 되어 있다.
주로 사용되는 피드 형식
RSS: 가장 널리 알려진 피드 형식으로, 간단한 XML 형식을 사용해 콘텐츠 업데이트를 제공
Atom: RSS와 유사한 기능을 가지지만, 좀 더 복잡한 콘텐츠를 다룰 수 있는 구조로 설계됨
mRSS: 멀티미디어 콘텐츠를 위한 RSS 확장으로, 비디오, 오디오 등의 미디어 파일 정보를 포함할 수 있음
가장 간단한 사이트맵 형식으로 HTML 및 기타 색인 생성이 가능한 페이지의 URL만 표시할 수 있다.
활용도
장점
단점
예시)
http://www.yourwebsite.com
http://www.yourwebsite.com/about
http://www.yourwebsite.com/contact
http://www.yourwebsite.com/products/product1
http://www.yourwebsite.com/products/product2
sitemap.txt 라는 이름으로 저장되며, 검색 엔진에 제출할 수 있다.Google에 사이트맵을 제출하는 방법들 중 몇가지만 정리해 보았다.✨
(1) Google Search Console 사용
가장 일반적인 방법은 Google Search Console을 통해 사이트맵을 제출하는 것이다. 이를 통해 제출한 사이트맵에 대한 통계와 검색 엔진의 크롤링 상태를 확인할 수 있다.
(2) Search Console API
API를 통해 프로그래밍 방식으로 사이트맵을 제출할 수 있다. 이 방법은 자동화된 시스템에서 유용하게 사용된다.
(3) robots.txt
robots.txt 파일에 Sitemap: 지시문을 추가하여 사이트맵의 위치를 명시할 수 있다. 검색 엔진이 robots.txt 파일을 크롤링할 때 사이트맵의 위치를 인지하게 된다.
(4) 교차 사이트맵 제출
여러 사이트에 걸쳐 하나의 사이트맵을 사용할 수 있으며, 이를 통해 모든 사이트의 URL을 관리할 수 있다. 이는 모든 사이트의 소유권을 확인한 후에 가능하다.
✍️
이 방법들은 Google이 웹사이트를 효율적으로 크롤링하고 색인화하는 데 도움을 줄 수 있다. 그러나 Google은 사이트맵을 제출받았다고 해서 반드시 모든 URL을 크롤링하거나 색인화한다는 것을 보장하지 않는다고 한다.😮 사이트맵은 검색 엔진에 대한 '힌트'이며, 실제 색인화는 Google의 알고리즘과 크롤링 정책에 따라 결정된다!
내 경우 robot.txt에 Sitemap: 을 'Sitemap: https://test.com/sitemap.xml' 로 기재하고, google search console에 https://test.com/sitemap.xml 를 제출했다.
이 둘중 하나만 해도 사이트맵 제출이 된다는 걸까? 🧐
👉 robots.txt파일에 Sitemap: 항목을 추가하거나 구글 서치 콘솔을 통해 직접 사이트맵을 제출하는 방법 둘 중 하나만으로도 Google에게 사이트맵을 알릴 수 있다고 한다. 그러나 두 방법을 모두 사용하는 것이 여러가지 이유로 권장된다고..!
robots.txt를 사용하는 경우
: 이 방법은 Google 뿐만 아니라 다른 검색 엔진에게도 사이트맵의 위치를 알려준다.
검색 엔진이 언제든지 robots.txt를 확인하면 자동으로 사이트맵을 발견할 수 있다.
Google Search Console을 사용하는 경우
: 사이트맵을 직접 제출함으로써 Google에게 즉시 알릴 수 있다.
제출 후에는 Google Search Console에서 사이트맵의 처리 상태와 크롤링된 페이지, 발견된 오류 등에 대한 자세한 정보를 얻을 수 있다.
이처럼 두 방법을 모두 사용함으로써, 사이트맵의 발견 가능성을 최대화하고, Google이 사이트맵을 크롤링하고 처리하는 과정에 대한 더 상세한 피드백을 받을 수 있게 되는 것이다.😎 따라서 사이트의 SEO 관리에 있어 좀 더 효과적인 접근 방식이 될 수 있다.
또한, 사이트 맵에는 xml 형식만 있는 줄 알았는데 그외에도 다른 형식이 있다는 것을 알게되었다. 😤
reference)
구글검색센터