IT/웹툴즈

XE용 Sitemap XML 생성 모듈

k2man 2009. 4. 28. 17:44
반응형

많이 허접하고, 개선해야 할 점도 많지만 공개하겠습니다. ^^;;

http://webtools.kr/xe_list/1463 에서 다운로드 받으실 수 있습니다.

구글, 야후 등의 검색엔진 크롤러가 참고할수 있는 Sitemap XML 파일 생성 모듈입니다.

구글 웹마스터 도구 https://www.google.com/webmasters/tools/ 에 XML파일을 등록하면, 구글에서 얼마나 크롤링하고 있는지 상태를 확인할 수 있습니다.

Sitemap XML에 대한 자세한 내용은 http://www.sitemaps.org/ko/ 에 자세히 나와 있습니다.

주로 검색엔진에 정확한 사이트 정보를 알려줘서 검색엔진에 최대한 반영시키기 위해 사용합니다.

설치방법

1. xmlsitemap.zip 파일을 압축 풀어서 XE경로/modules 폴더에 업로드 하시면 됩니다.

2. XE가 설치된 디렉토리에 sitemap.xml 과 sitemap.xml.gz 파일 두 개를 만들고, 707 권한을 줍니다. (files디렉토리를 이용하면 이런 절차가 필요 없겠지만, Sitemap XML 규칙상 최상위 디렉토리에 있어야 합니다.)

- sitemap.xml 파일은 일반적인 텍스트파일이고, sitemap.xml.gz 파일은 sitemap.xml 을 압축한 것입니다. 트래픽 등을 감안해서 sitemap.xml.gz 파일을 이용하시는 것이 좋습니다.

설치가 완료되면 아래처럼, '부가 기능 설정' 하위에 'XML-Sitemap' 메뉴가 생성됩니다.

image

옵션 몇 가지

검색엔진 통보

'Google 에 업데이트를 통보합니다.' 는 Sitemap을 생성하고, 이 위치를 즉시 Google에 통보하는 것입니다. 위에서 말씀드린 웹마스터 도구에서 등록하는 것과는 별개입니다. (웹마스터 도구를 이용하면 통보뿐만 아니라, 통계를 볼 수 있다는 장점이 있습니다.)

나머지 3개도 마찬가지인데, Yahoo의 경우에는 API Key를 필요로 합니다. 기존에 야후 API Key가 있다면 그 것을 이용하셔도 됩니다.

sitemap.xml.gz 의 경로를 전송하게 됩니다.

업데이트 주기

이 페이지는 대략 이 기간마다 업데이트 된다는 의미입니다.

주의 할 것은 이 것을 무조건 자주되도록 설정해도 크롤러가 그 만큼 크롤링 해주지는 않습니다. 그냥 참고사항일 뿐입니다.

중요도

사이트 내에서의 중요도를 수치로 비교하는 것입니다.

무조건 높다고 좋은 것은 아닙니다. 그리고 이 수치를 높게 하더라도 검색 결과에서 상위에 위치하지 않습니다. 그냥 이 사이트 내에서의 중요도를 나타내는 지표입니다.

image

문제점

좀 더 고민 후에 공개하려고 했으나, 한 가지 문제 때문에 미칠 것 같아서 일단 공개합니다. ㅜㅜ;;

'XML 파일 생성' 버튼을 클릭하게 되면, 에러가 뜰겁니다. (생성된 sitemap.xml 내용이 뜹니다.)

files 디렉토리를 이용했을 때는 문제가 없지만, XE 최상위 디렉토리에 쓸 경우에는 꼭 에러메시지가 떠야만 기록이 되네요. 아직 이 이유를 찾지 못했습니다.

xmlsitemap.admin.controller.php 의 113번째 줄인 echo FileHandler::readFile($filename); 를 주석처리해서 sitemap.xml 파일이 정상적으로 작성되는지 확인 부탁드립니다. 제 서버의 특성인지 XE에서 차단되는 것인지 제 능력으론 알수가 없네요...

차후

1. 일단 위에서 말씀 드린 문제점을 해결해야 할 것 같습니다.

2. Sitemap XML의 제약 사항 중 용량이 10MB를 넘지 말아야 하고, URL이 50,000개를 넘지 말아야 합니다. 아직 이 제약 사항을 만났을 때 파일을 여러 개로 만들어 주는 기능을 만들지 못했습니다.

즉, 현재는 게시글이 50,000개에 육박하는 사이트의 경우에는 사용이 어렵습니다. 이 문제는 다음 버전에서 바로 해결하겠습니다. (XML파일은 만들어지지만, 50,000개까지만 인식하는 것 같습니다.)

3. 현재는 게시판, 페이지, 방명록, 외부페이지, 블로그 의 경우에만 URL을 만들어 줍니다. 다른 모듈의 경우도 추가하도록 하겠습니다.

반응형