구글은 정말 마술로 운영되는 것 같다. 이들에게 있어 검색 작업은 노력을 들이거나 심각하게 고민하지 않아도 순탄하게 진행되는 마법과 같은 툴로 보인다.
검색엔진들은 상용 검색 툴을 구입해 내부에서 개발 작업을 거쳐 만들어졌든지, 아니면 구글과 같은 공적 인덱스·검색 서비스를 사용하든지 상관없이 모두 동일한 기초 규칙들을 준수한다. 내부 검색을 통해 의미 있는 결과를 산출하도록 사이트를 개발하면 외부 검색에 대해서도 적절한 결과를 산출해 낸다.
1. 메타태그를 작성하라
검색 엔진을 제어하기 위해 해야만 하는 가장 기초적인 작업은 내부적이든 외부적이든 상관없이 ‘ROBOT’ 네임 속성을 지닌 메타태그와 ‘INDEX’ 또는 ‘NO INDEX’ 그리고 ‘FOLLOW’나 ‘NO FOLLOW’ 등을 포함하는 콘텐츠 속성을 지닌 메타태그를 작성하는 것이다.
이 간단한 태그는 검색엔진에게 웹페이지와 관련해 어떤 일을 해야 하는지 알려준다. 내/외부 검색엔진 모두 페이지 작업에 관한 한 이 메타태그 지침을 준수한다.
<META NAME="robots" CONTENT="noindex">
‘INDEX’는 검색 엔진이 만드는 인덱스 내에 페이지를 포함시키도록 허용한다는 뜻이다. 이와 반대로 ‘NO INDEX’는 인덱스 내에 페이지를 포함하지 않도록 검색엔진에 지시한다. 검색엔진이 사용자 검색 결과를 찾기 위해 사용하는 것은 바로 이 인덱스다. 만약 이 페이지가 인덱스에 덧붙여지지 않으면 검색을 통해 발견되지 않을 것이다.
ROBOT 메타태그에 대해 NO INDEX 설정을 활용할만한 좋은 사례는 바로 전자상거래 웹사이트에서 단기 판매 제품을 보유하고 있을 때다. 사용자들이 주문을 검토할 수 있도록 제품을 카탈로그 내에 유지하고 싶겠지만 불특정 다수의 누군가가 이 제품을 맞닥뜨리긴 원하지 않을 것이다. 단기 특판 제품이 아닌, 카탈로그 내 제품은 대부분 INDEX 설정을 갖게 된다.
‘FOLLOW’는 검색엔진이 반드시 페이지 내의 링크를 따라가야 한다는 것을 의미하며 ‘NO FOLLOW’는 검색엔진이 페이지에서 발견되는 링크를 따라가지 않도록 지시한다. ‘NO FOLLOW’ 설정은 예를 들어 토론 포럼을 인덱스 작업하고 있는데 내부 검색엔진이 통제를 떠나 게시물 내에 있을 수 있는 다른 사이트로의 링크를 인덱스 작업하는 것처럼 따라가지 않았으면 하는 링크를 참조하지 않도록 해준다. 이 경우 인덱싱되는 콘텐츠들은 검색엔진이 페이지 자체를 인덱스로 만들지는 않지만 제공된 링크를 따라가기 위해 ‘NO INDEX’나 ‘FOLLOW'’등의 설정을 가질 공산이 크다.
2. 목록을 만들라
검색에 친숙한 사이트를 구축하는 데 있어서 핵심 도전과제 중 하나는 추가되는 웹페이지가 과연 어떤 것인지 검색 인덱스가 알 수 있도록 지원하는 것이다. 전통적으로 검색엔진은 사이트의 루트 페이지를 지향하며 모든 링크를 발견할 때까지 사이트 구석구석을 누비고 다닌다. 이는 웹 기반 HREF 속성을 지닌 ‘앵커(A)’ 태그로 항상 링크를 산출하는 사이트에서 잘 동작한다.
또한 많은 웹사이트들이 한 페이지를 다른 페이지에 연결시키기 위해 활용하는, 자바스크립트 기반 링크가 있다. 그러나 이 방법의 문제는 검색 크롤러(crawler)가 사이트 내의 링크를 따라갈 수 없게 된다는 것으로 따라서 검색 인덱스는 단지 이는 홈페이지의 정상적인 링크에서 건질 수 있는 소수의 링크만을 확보하게 된다.
해결책은 검색엔진이 수집했으면 하는 모든 링크가 포함된 페이지를 별도로 제작하는 것이다. 이 페이지는 전자상거래 사이트의 경우 모든 제품에 대한 링크를 포함하거나, 커뮤니티 사이트에서는 모든 종류의 토론에 대한 링크를 포함할 수도 있다.
이렇게 만들어진 웹페이지의 목적은 사이트의 모든 콘텐츠로 연결되는 대량의 앵커 태그가 포함된 HTML 페이지를 만든다는 것이다. 이 페이지는 사이트 내의 일부 특정 스크립트로 작성돼야만 한다는 점에서 특별하진 않다. 단지 필요한 모든 링크를 재빨리 제공해야만 한다는 점이 차별점이다.
일부 경우에서 이 기술은 사이트 인덱스를 활성화하는 빠르고 위력적인 방법이 될 수도 있다. 비록 사이트 구조 자체가 그다지 인덱스 작성에 용이하진 않다고 해도 말이다. 즉 파일 시스템이나 IIS 가상 디렉토리 사이를 말 그대로 돌아다님으로써 사이트 상의 모든 파일들의 목록을 만들 수 있는 프로그램을 제작할 수 있다.
이에 따르면 각각에 대한 링크를 제공함으로써 모든 페이지를 검색 인덱스에 덧붙이는 것이 가능하다. 그러나 부작용으로 메인 사이트에서는 오래전에 폐기처분한 웹페이지와 파일들이 검색 인덱스에 포함될 수도 있다.
검색 크롤러 시작 페이지는 검색엔진이 링크를 따라가되 페이지 그 자체를 인덱스로 만들지는 말라고 지시하는 ‘META ROBOT’ 태그로 설정된다. 위에서 살펴 본 것처럼 이 콘텐츠는 ‘NO INDEX’, ‘FOLLOW’ 등의 메타태그를 갖고 있다. 이 페이지로 인해 검색엔진은 사이트 전체에서 모든 목록화된 페이지를 인덱스로 만들 수 있게 된다.
몇몇 검색엔진, 특히 내부에서 개발된 것들은 이런 링크 페이지에 대해 검색엔진을 직접 지목할 수 있도록 허용한다. 그러나 크롤러의 출발점을 제어하는 ‘사치’를 누리지 못하는 경우도 있다. 이 경우 홈페이지의 검색 크롤러 페이지로의 링크만이 필요하게 된다. 검색엔진이 링크를 따라가도록 하는 것이 실질적인 목적이라면 어떤 텍스트도 앵커 태그에 넣을 필요가 없다.
이에 따른 결과는 태그 내부를 조명하는 텍스트가 전무하기 때문에 존재하는지도, 심지어 인식조차 하지 못한 상태에서 검색 엔진이 검색 크롤러 인덱싱 페이지에 도달하도록 지원하는 링크라 할 수 있다. 바로 아래 구문과 같은 것이다.
<A HREF="./searchcrawler.aspx">
3. 태그를 활용하라
검색엔진에 대한 글을 마치며 마지막으로 당부하자면 모든 페이지에 적절한 특정 타이틀이 확실히 포함돼 있어야만 최적화가 가능하다는 것이다. 대다수 검색엔진들은 검색결과 조합에 있어 페이지의 타이틀을 활용한다.
이와 비슷하게, ‘KEYWORDS’의 이름을 지닌 메타태그를 사용하면 해당 키워드들을 검색할 때 페이지가 더 빈번하게 노출될 수 있다.
♣ 자료출처 : http://www.zdnet.co.kr
WRITTEN BY
- 손가락귀신
정신 못차리면, 벌 받는다.