웹사이트 트래픽 잡아 먹는 검색로봇 차단

구글봇
저는 사이트 하나를 운영하고 있습니다. 말이 사이트지 개인 블로그만도 못한 트래픽의 개인 웹페이지입니다. 일 방문자는 한 50명이나 될려나요?

방문자수가 얼마 안 되는 이유는 아는 사람들만 알고 모르는 사람들은 전혀 모르는, 즉 정말 개인블로그처럼 운영하는 사이트기 때문이죠.

글도 많이 안 쓰고 메모를 한다거나 제가 가진 사진들이나 인터넷에 떠도는 마음 드는 사진들을 올려 놓는 용도로 사용하고 있으니까요.

그나마도 서버비 걱정 떄문에 전부 플리커나 임구르에 저장한 뒤에 불러 올 수 있도록 해놓고 있습니다.

그래서 제 웹사이트는 트래픽이라는게 도무지 나올 것이 없는 상황이죠. 그런데 최근에 트래픽을 확인해보니 주의요망 단계까지 트래픽이 나오는겁니다.


웹사이트 트래픽


오늘 오후 3:00까지의 트래픽사용량은 356M. 방문자수도 몇 명 안 되는걸 감안할 때 도무지 이해할 수 없는 수치죠.

대체 왜 이런 일이 벌어지는건지 고민을 하다가 원인을 찾아보기로 하였습니다.

확인결과 검색로봇들이 원흉이었습니다. 검색로봇들이 활발하게 제 사이트를 찾아와주었고 그게 전부 트래픽을 잡아 먹고 있었습니다.

특히 구글봇(googlebot)!
박지성급 활동량을 보이면서 제 웹사이트의 트래픽을 갉아, 아니 씹어먹고 있었던겁니다.

그래서 검색봇을 어떻게 막는지 찾아 보았습니다. robots.txt라는 것을 만들어서 막을 수가 있더군요.

하지만 제 사이트가 이름있는 사이트도 아니고 검색봇을 차단한다는 것은 기계 뿐만 아니라 사람까지 막겠다는 것과 다름없는 일이라서 고민을 할 수 밖에 없었죠.

그래서 좀 더 찾아보니 검색로봇이 들어오는 주기를 길게 하는 방법이 있음을 확인할 수 있었습니다.

그리고 구글봇의 경우는 Google Search Console을 통해서 크롤링 속도를 제한할 수 있습니다. 아래는 제목 링크를 클릭하시면 본인의 사이트를 설정하실 수 있죠. 다만, 구글웹마스터도구에 가입이 되어 있어야 합니다.


Googlebot 크롤링 속도 변경

크롤링 속도란 크롤링 과정에서 Googlebot의 요청 속도를 의미하며 URL 구조를 크롤링하는 빈도 또는 크롤링하는 범위에 영향을 주지는 않습니다. Google에서 사용자 사이트의 새로운 또는 업데이트된 콘텐츠를 크롤링하게 하려면 Fetch as Google을 사용하세요.
Google은 각 사이트에서 크롤링할 페이지 수를 결정하는 정교한 알고리즘을 사용합니다. Google의 목표는 방문한 사이트에서 서버의 대역폭에 무리를 주지 않으면서 가능한 한 많은 페이지를 크롤링하는 것입니다.

Google에서 내 사이트를 너무 자주 크롤링하여 서버의 속도가 느려지는 경우 루트 수준에서 사이트의 크롤링 속도(Googlebot에서 사이트를 크롤링하는 데 사용하는 시간)를 변경할 수 있습니다(예: www.example.com 및 http://subdomain.example.com). 크롤링 속도를 변경하면 문제가 발생할 수 있으므로(예: Google에서 내가 설정한 속도보다 빠른 속도로 크롤링할 수 없는 문제) Googlebot이 서버에 너무 자주 액세스하여 발생하는 특정 문제를 파악하기 전에는 크롤링 속도를 변경하지 마세요.

그러나 www.example.com/folder와 같이 루트 수준이 아닌 사이트의 크롤링 속도는 변경할 수 없습니다.

크롤링 속도를 변경하려면 다음 단계를 따르세요.
1. Search Console 홈페이지에서 원하는 사이트를 클릭합니다.
2. 톱니바퀴 아이콘 을 클릭한 뒤 사이트 설정을 클릭합니다.
3. 크롤링 속도 섹션에서 원하는 옵션을 선택합니다.
4. 새로 설정한 크롤링 속도는 90일 동안 유효합니다.


저걸 보고 저는 구글봇 크롤링 속도 변경을 최저로 하였습니다. 최대한 느리게 방문할 수 있도록 한거죠.
구글봇 크롤링 주기


구글봇만 설정해두기는 아까워서 robots.txt도 메모장으로 작성해해 FTP를 이용해 검색봇 설정을 해두었습니다.

이것 역시 생전 처음해본 일입니다.

얼마나 제가 웹초보냐면 robots.txt을 올리는 위치가 루트파일이라고 하는데, 루트파일이 무슨 소린지 몰라서 헤맸습니다.

제가 직접 이것저것 해보니 FTP 접속하셔서 보시면 처음 보이는 폴더가 루트파일이고 바로 그 아래에 robots.txt를 넣어주면 된다는 말입니다.

저처럼 dothome 서비스를 이용하시는 분은 html 폴더에 넣어주시면 됩니다.

robots.txt ftp

html 폴더 안에 robots.txt가 보이시죠?

robots.txt 검색설정이 잘 되었는지 확인을 하고 싶으시면 주소창에 robot.txt를 붙혀서 확인해보시면 됩니다.

즉, 본인의 사이트 이름이 www.example.com이라고 한다면 www.example.com/robots.txt라고 쳐보시면 된다는거죠.

robots.txt 설정
저는 현재 robots.txt 설정은 다음과 같이 되어 있습니다. 빙봇(bingbot)의 경우는 아예 막아 놨습니다.

그리고 Googlebot-Image도 막아놨습니다. 이건 구글 검색봇 중에서 이미지를 검색하는 봇이라고 하더군요.

이미지가 텍스트와는 달리 트래픽이 더 크기 때문에 잡아 먹는 양도 많아서, 플리커나 임구르를 통해서 이미지를 올리고 있지만 일단 차단해두었습니다.

참.. robots.txt의 경우 메모장으로 만드시면 됩니다.

메모장에 원하는 검색봇을 막는 방법은 자신이 막고 싶은 검색봇의 이름을 확인한 다음에

User-agent: 검색봇이름
Disallow: /

라고 기입하시면 됩니다.

이제 트래픽이 어떻게 변하게 되는지는 며칠 동안 살펴봐야겠습니다. 검색봇 막으려다 사람까지 막는건 아닌지 걱정이 되기도 하지만 어쩔 수가 없죠.