사이트맵을 검색도구에 등록하는 개발자


사이트 맵이란? 웹사이트의 존재를 알리는 표지판과도 같아요. 워드프레스 블로그로 예시를 들어 보겠습니다. 처음 워드프레스를 만들면 그냥 IPv4 주소로 명시된 PHP 파일 문서 조각입니다. 이 상태에서는 검색 엔진 마스터에 등록할 수 없어요. 아무리 글을 써도 검색 엔진에 등록되지 않는, 일명 무인도 상태와 같아요.

아무리 퍼블리싱을 잘한다 하더라도 검색 엔진(구글, 네이버, 다음)에서는 이 워드프레스 블로그의 주소의 존재를 모르죠. 그래서 도메인 주소를 입히고 고유 주소를 설정한 이후에 사이트맵과 RSS를 검색 엔진 마스터에 등록을 해야 돼요.



사이트맵은 웹사이트의 표지판 같은 역할을 합니다

좀 더 이해를 돕기 위해 순차적으로 살펴 볼게요. 초기 워드프레스는 IPv4 주소로 이뤄져 있으며 고유한 사이트맵과 RSS 피드를 가지고 있어요. 하지만 아직 도메인을 설정하지 않아서 검색 엔진 마스터(구글 서치 콘솔, 네이버 서치 어드바이저)에 등록할 수 없어요.

이해가 안되신다면, 실생활을 예시로 들어볼게요 아직 우리의 워드프레스 사이트는 이름(도메인)이 정해지지 않은 무인도와도 같아요. 이름도 없는 무인도라서 사람들이 이 섬이 존재하는지 모르죠. 그래서 사이트맵이 표지판의 역할을 해도 아무도 여기가 좋은 정보가 있는 블로그인지 모르는 무인도나 마찬가지인 상태가 돼요.

여기서 우리는 도메인 주소를 입혀주면 비로소 이 무인도라는 섬에 이름이 생기게 되고 무의미한 사이트맵과 RSS 피드도 해당 도메인 주소를 따라가게 돼요.이름이 생긴 워드프레스는 이제 새로운 게시글을 발행하거나 사이트 디자인을 변경하는 퍼블리싱 작업을 하면 HTML 문서가 수정되어 사이트맵과 RSS 피드에 등록돼요. 

새로운 게시글을 발행하면 RSS 피드가 업데이트돼 웹사이트의 알림판 역할을 하며, 워드프레스에 카테고리를 추가하거나 디자인을 변경하면 사이트맵에 등록돼 사이트맵이 정렬돼요.  모양세는마치 HTML 문서처럼 보입니다.


사이트 맵의 역사와 검색로봇의 크롤링 순서

검색로봇이 사이트를 인덱싱하는 과정을 시각화한 이미지


1990년대 중반부터 2000년대 초반까지는 웹 페이지들이 단순한 구조로 이루어져 있었습니다. 사용자가 정보를 찾기 위해서는 고유 주소를 통해 직접 페이지를 찾아가거나 특정 단체에서 만든 웹사이트의 정보를 찾아보는 것에 그쳤습니다. 특히 인터넷 환경에 생성된 웹 페이지의 수가 상대적으로 적었지만, 그 문서 수가 점점 늘어나게 되면서 구조화된 네비게이션 없이 정보를 찾는 것이 어려웠습니다.

이런 상황에서 웹 개발자들은 웹사이트의 구조를 보다 명확하게 시각화하고 검색 엔진에게 페이지들의 관계를 알리기 위해 'robots.txt' 파일을 사용하기 시작했습니다.

이 파일은 해당 웹 문서에서 명시된 허가여부에 따라 다수의 페이지를 크롤링할 수 있게 되었고 어떤 페이지를 제외할지를 정의하는데 사용됩니다. "Allow"로 명시되어 있는 페이지는 정보를 수집하고 "Disallow"로명시가 되어 있는 페이지는 크롤링을 하지 않았습니다.하지만, 검색로봇의 동작은 다소 무거웠으며, 수집 속도 또한 느렸으며 점차 웹이 복잡해지면서 사이트의 구조를 명확하게 전달할 필요성이 생기게 되었는데, 그 때 만들어진게 사이트맵입니다.



웹사이트, 사이트맵, RSS피드를 시각화한 이미지


사이트 맵의 등장

2000년대 중반, 구글은 사이트 맵을 공식적으로 도입하였습니다. 이는 웹사이트의 전반적인 구조를 정의하고 각 페이지의 중요도를 표시하는데 사용되었습니다. 이렇게 사이트 맵은 검색 엔진에게 웹 페이지를 효과적으로 찾고 색인화할 수 있도록 도와주는 역할을 하게 되었습니다.

처음에 사이트맵을 웹사이트의 표지판이라고 설명을 했던것도 이와 같은 이유입니다. 웹페이지를 크롤링할 때 있어서 보다 구조화 된 문서가 검색로봇의 크롤링 속도를 가볍게 만드는데 한 몫을 했습니다. 로봇TXT파일에서 명시된 색인 허가된 문서와 불가한 문서를 사이트맵을 통해 쉽게 찾을 수 있을만큼 효율적인 문서의 역할을 하는 것이 사이트 맵입니다.


XML 사이트 맵이란?

사이트 맵이 등장한 이후, XML 사이트 맵이 등장했습니다. XML 사이트 맵은 특정한 형식으로 작성된 파일로, 웹 페이지의 목록과 그에 대한 추가 정보를 제공합니다. 이 파일은 검색 엔진에게 페이지의 변경 내용을 알리고 새로운 페이지를 빠르게 색인화하는 데 이전 보다 더 가벼운 환경에서 할 수 있게 제공이됩니다.



사이트 맵과 크롤링

규모가 큰 웹사이트의 경우, 수많은 페이지들이 존재하고 링크 구조가 복잡하기 때문에 검색 엔진이 이를 파악하기 어렵습니다. 사이트 맵은 이런문제를 해결하고 웹사이트의 모든 페이지를 크롤링할 때 효율적인 경로를 제공할 수 있습니다.

해당 웹사이트의 업데이트 소식, 내외부 링크의 존재여부를 알 수 있었으며 해당 웹사이트에 연결된 페이지들이 어떤 것들이 있으며 퍼블리싱의 변화 또한 유연하게 알릴 수 있게 되었죠.


검색 로봇이 사이트를 크롤링 할 때 동작 원리


  1. URL 큐 생성 : 검색 엔진은 시작 URL부터 출발하여 크롤링 대상 페이지를 담은 큐를 생성합니다

  2. 로봇의 요청 : 큐에서 URL을 하나씩 가져와 해당 페이지로의 요청을 보냅니다. 이때 부터 해당 웹 사이트의 로봇 TXT 파일의 명령에 따라 움직이게 됩니다.

  3. 웹 페이지 다운로드 : 요청에 따라 웹 서버가 해당 페이지를 제공하면 로봇은 페이지를 다운로드합니다. 웹 문서의 링크 연결성과 해당 문서의 스키마 정보를 수집합니다.

  4. 페이지 분석 : 다운로드한 페이지를 분석하여 새로운 링크를 추출하고 다음 크롤링 대상으로 추가합니다. 이 때 페이지 내에 링크가 존재한다면 Follow여부에 따라 정보를 수집하거나 제외를 할지 정합니다.

  5. 사이트 맵 존재 여부 확인 : 만약 웹사이트에 사이트 맵이 있다면, Site Map을 통해 웹 페이지의 전반적인 구조를 파악하고 크롤링 우선순위를 조절합니다.

  6. 주기적인 업데이트 확인 : 검색 엔진은 주기적으로 사이트를 재 방문하여 새로운 내용이나 변경된 페이지의 내용을 갱신합니다.

사이트 맵을 검색도구마스터에 등록하는 방법

URL 유형 설명
myurl/sitemap.xml Sitemap 블로그 스팟 Sitemap 파일
myurl/feeds/posts/default?alt=rss RSS Feed 블로그 스팟 RSS 피드
myurl/sitemap.xml Sitemap 워드프레스 Sitemap 파일
myurl/feed/ RSS Feed 워드프레스 RSS 피드

자신의 웹사이트 사이트 맵을 검색엔진에 등록하는 방법은 어렵지 않게 할 수 있습니다. 이제 실제로 검색엔진에 내 사이트가 표시가 될 수 있게 해주는 예제를 해보려고 합니다.

예제에선, 전세계 대표되는 검색엔진인 구글 검색엔진의 검색마스터 도구인 구글 서치콘솔에 자신의 사이트 사이트맵과 RSS피드를 등록하는 방법을 말씀드리겠습니다. 여러분이 어떤 검색엔진에 노출이 되고 싶은지에 따라 생략을 해도 되고 제가 설명드린 사이트 외에 다른 사이트의 검색 도구 마스터에 등록을 하셔도 무방합니다.


구글 서치콘솔에 사이트맵 등록하는 방법




구글 서치콘솔 URL등록 페이지

위에 보이는 이미지를 클릭하시면 구글 서치콘솔로 이동할 수 있습니다.

우선적으로 구글서치콘솔에 들어오시면 자신의 웹사이트 URL을 등록해주셔야합니다. https://를 꼭 붙이시고 자신의 웹사이트 주소를 URL접두어에 작성해주시면 됩니다.


구글 서치콘솔 등록 코드 복사 페이지


자신의 웹사이트 URL을 등록하신 이후엔 소유권 인증을 해야 합니다. 자신의 웹사이트 에디터에 들어가셔서 <head></head>코드 내부에 복사한 코드를 붙여 넣어주시면 됩니다. HTML 파일 다운로드가 아니라 다른 확인 방법 섹션에서 HTML코드를 눌러주시면 드롭다운으로 html코드를 복사할 수 있는 섹션이 있습니다. 복사 버튼을 눌러주시고 자신의 웹사이트의 html에디터로 들어가 head태그 내부에 서치콘솔 html 코드를 등록을 해주세요.

아래 보이는 이미지처럼 복붙 해주시면 됩니다!

head태그에 html코드 등록하기


구글 서치콘솔 소유권 확인

이렇게 html코드를 head요소 내부에 복붙한 이후 소유권 확인을 누르시면 이제 소유권이 확인 되었다는 팝업창과 함께 드디어 구글 서치콘솔을 사용할 수 있게 됩니다. 이제 여기서 우리는 사이트맵과 RSS피드를 넣어보도록하겠습니다.


구글 서치콘솔에 사이트맵 등록하는 방법


구글 서치콘솔에 들어가 왼쪽 메뉴탭창에서 "색인생성" >> "sitemaps"를 들어가주시면 오른쪽 화면처럼 새 사이트맵 추가창이 뜨게 되는데 자신의 사이트맵 주소와 RSS피드 주소를 작성해주시면 됩니다. 위에 있는 사이트 맵과 RSS피드 주소값을 자신의 블로그( 블로그 스팟, 워드프레스)에 맞춰서 사용해주시면 됩니다.

사이트 맵과 RSS 모두 등록해주시면 되요. 스크롤로 올리기 귀찮은 사람을 위해 그냥 여기서도 남겨 놓을게요!



myurl/sitemap.xml / 블로그 스팟 Sitemap

myurl/feeds/posts/default?alt=rss  / 블로그 스팟 RSS 피드

myurl/sitemap.xml / 워드프레스 Sitemap

myurl/feed/   / 워드프레스 RRS피드