개선 사항

- URL이 많을때 여러 개의 XML문서로 나눠주는 옵션 (기본적으로 3개가 생성됨)

- 0.1의 가장 큰 문제였던, XE설치 디렉토리에 파일을 생성하는 문제를 FTP를 이용해서 해결 (files/xmlsitemap 디렉토리에 생성하고, FTP를 이용해서 XE의 기본 디렉토리로 복사)
=> 즉, 0.1때처럼 XE디렉토리에 파일을 생성할 필요가 없습니다.

- dbinfo에 URL을 입력하지 않은 경우 생기는 문제 수정

- file_put_contents 함수로 인해 php버전이 낮은 경우 생기는 문제 수정

- 날짜 오류 수정

- 메모리 부족으로 인한 문제 => 다양한 환경에서 테스트를 하지는 못했지만, XML문서당 URL수를 낮추면 해결이 될 수도 있어 보입니다. 이 문제가 발생하신 분의 피드백 부탁드립니다. ^^;;

추가 옵션

- FTP이용 복사 - 기본적으로 files/xmlsitemap 디렉토리에 xml문서를 생성하게 됩니다. 이 옵션을 체크해 주게 되면, FTP를 이용해서 XE 설치 디렉토리로 복사해 줍니다. Setting에 FTP정보를 정상적으로 입력한 경우에만 사용할 수 있습니다. 이 옵션을 사용하지 않거나 동작이 안되면, 수작업으로 복사해줘야 합니다.

- XML문서당 URL수 - 0.1과 달리 기본적으로 3개 이상의 XML문서가 생성됩니다.

sitemap.xml - Sitemap Index XML문서입니다. 구글 웹마스터 도구에는 이 문서만 등록하면 됩니다. (sitemap.xml.gz 로 등록할 것을 권장합니다.)

sitemaplist.xml - 메인화면, 페이지, 게시판목록 URL이 저장됩니다.

sitemap1.xml ~ - XML문서당 URL수에 따라 여러 개가 생성될 수 있습니다. 게시판 글 하나 하나의 URL이 생성됩니다.

추후 업데이트

- 게시판 목록의 각 페이지별 URL이 누락되는 문제

- liveXE 등의 별도 모듈에 해당하는 URL 적용

- gz압축 라이브러리가 없는 경우를 대비해 옵션으로 선택할 수 있도록

문제가 생기면 댓글로 피드백 부탁드립니다. 다양한 환경에서 테스트 할 수 있는 처지가 못되니 부탁드립니다. ^^;;

이 모듈은 http://webtools.kr/xe_list 에서 배포됩니다. ^^

image

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

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을 만들어 줍니다. 다른 모듈의 경우도 추가하도록 하겠습니다.

역시나 워드프레스용 플러그인인 XML-Sitemap에 대한 소개입니다.

구글 사이트맵은 구글 크롤러가 블로그를 방문했을 때 블로그에 존재하는 문서의 링크를 알려주는 용도입니다.

아무리 크롤러가 자동으로 크롤링해간다지만, 모든 문서 경로를 자동으로 찾아 간다는 것은 쉬운일이 아닐겁니다.

그래서 블로그의 최상위 디렉토리에 sitemap.xml 을 만들어 주고 이XML문서에 모든 문서 경로와 수정 빈도, 중요도 등을 입력해 주면 크롤러는 이를 참고로 문서들을 크롤링하게 되는 것입니다.

이 XML문서는 수작업으로 작성할 수도 있고 구글 웹마스터센터 https://www.google.com/webmasters 에서 제공하는 툴로 작성할 수도 있습니다. 이 웹마스터센터에 방문해 보시면 XML 문서의 형식도 잘 설명되어 있습니다.

하지만 일일이 이런 작업을 하고 업로드 하는 것이 쉽지 않을 것입니다. 그래서 나온 플러그인이 XML-Sitemap 입니다.

이 플러그인은 구글뿐만 아니라, 야후(API Key필요), MSN, Ask.com 도 지원하기 때문에 검색 결과 노출을 높이는데 더 많은 도움을 줍니다.

더구나 한글화도 되어 있기 때문에 사용에 어려움도 적은 편입니다.

image

설치 방법은 플러그인 공식 사이트 http://www.arnebrachhold.de/projects/wordpress-plugins/google-xml-sitemaps-generator 를 방문하시면 됩니다.

+ Recent posts