오아시스 시스템의 웹 수집 로봇이 귀하의 웹사이트를 안전하고 정확하게 수집하여 보존하기 위해 개발자 들에게 웹사이트 구축 방법을 안내하기 위한 가이드 입니다.


1. 웹사이트 수집절차

수집을 위해 설정한 정보(URL, 수집주기, 수집깊이 등)를 이용하여 실제 수집기가 직접 사이트에 방문하여 웹 문서, HTML 소스, 웹 이미지 등을 수집합니다. 수집기는 크게 일반 웹 검색 시스템에서 사용하는 것과 유사한 크롤러와 웹 페이지의 스냅샷 사진을 촬영하는 스냅샷 크롤러로 구성됩니다. 일반 웹 수집 크롤러는 웹 문서, 링크 정보 등의 정보를 수집하고 웹 스냅샷 크롤러는 해당하는 웹 페이지의 이미지를 촬영하여 이미지를 수집합니다.

웹사이트수집절차

2. 웹사이트 구축 방법

오아시스 수집 로봇이 귀하의 사이트에 접근 할 수 있도록 허용합니다.

  • 1) 웹 서버 혹은 방화벽에서 오아시스 수집로봇의 접근을 허용합니다.
       수집 로봇의 이름(User-Agent)은 아래와 같습니다.
  • Mozilla/5.0 (compatibel; heritrix/ +http://www.oasis.go.kr

    수집 로봇을 차단하고 싶다면 IP 기반으로 차단하지 말고, 표준적인 방식인 robots.txt를 활용해야 합니다.

  • 2) robots.txt 파일은 반드시 root에 위치해야 합니다.
  •     예제) www.exmaple.com 인 경우 - http://www.example.com/robots.txt
  •   사이트의 문서에 수집로봇의 접근이 가능하게 하려면, robots.txt를 아래처럼 설정해야 합니다.
  • User-agent : heritirix (수집을 허용하는 로봇 이름 작성, * 은 모든 로봇 허용)
    Allow : / (수집을 허용하는 목록 작성, / 은 모든 페이지 수집)
  •   수집 로봇의 수집을 원하지 않는 부분이 있다면 (중요데이터) robots.txt를 사용하여 수집 로봇의 수집 금지를 설정합니다.
  • User-agent : * (수집을 금지하는 로봇 이름 작성, * 은 모든 로봇 금지)
    Disallow : / (수집을 금지하는 목록 작성, / 은 모든 페이지 수집 금지)

    ※ 주의사항 : 사이트를 구성하는 데이터(css, image, subpage 등)를 금지 설정을 하면 수집 로봇이 데이터 수집을 하지 못해 데이터를 재구성하는데 많은 어려움이 있습니다.

  • 3) robots.txt에서 sitemap.xml의 위치를 알릴 수 있습니다.
  • Sitemap:http://www.example.com/sitemap.xml
  • 4) 각 페이지의 meta 태그를 확인합니다.
       페이지의 meata 태그에 noindex처리가 되어있다면 해제해주세요. noindex가 표시된 페이지는 수집이 제외됩니다.
  • <meta name="robots" content="noindex">
                                   ↓
    <meta name="robots" content="index">

3. 웹페이지 작성방법

OASIS의 웹 수집 로봇은 웹자원 수집을 위해서는 기본적으로 자원들간 연결된 HTML Link에 의해 수집대상 자원에 접근하여 수집하므로 웹 페이지 작성시 HTML Link를 이용
하여 작성해주세요. DB로 제작된 웹사이트, 플래쉬 및 자바로 작성된 동적인 사이트는 웹로봇이 수집대상 자원의 LINK 정보를 추출할 수 없으므로 인해 수집할 수 없습니다.

  • 1) URL정보를 변경 할 때, HTML 헤더에 메타 태그를 사용합니다.
       URL 정보를 변경 할 때, 자바스크립트를 사용 시 URL의 정보가 정확히 인식 되지 않습니다.
       자바스크립트 대신 HTML의 메타 태그를 이용합니다.
  •     예제) URL은 http://www.nisc.go.kr 접속해서 http://www.nisc.go.kr/index.do로 URL 변경 접속
  • 나쁜 예
    <script>function goIndex(){
    document.location.href="/index.do";
    </script>
    <body onload="goIndex()">
  • 좋은 예
    <head>
    meta http-equiv="refresh" content="0;
    URL=/index.do">
    </head>

    ※ 주의사항 : 수집 로봇이 메인 URL을 설정할 때, 첫 페이지의 URL을 가지고 메인 URL로 설정합니다. URL 변경을 통해 메인 페이지로 접속하는 경우 URL
                   변경 소스코드를 잘못 작성하면 메인페이지로 연결되지 않기 때문에 수집 실패로 분류가 됩니다.

  • 2) 모든 페이지의 제목을 동일하게 표현하지 않습니다.
       각 페이지의 제목은 콘텐츠 주제를 정확하게 설명할 수 있는 문구를 적어야 합니다.
  • 3) css 파일이 위치한 상위 경로까지 seed URL을 정확히 작성합니다.
       css 파일의 위치를 정확히 작성해 주어야 정상 수집이 됩니다. 수집 로봇은 경로 파라미터를 그대로 인식하여 수집하기 때문에, 상위경로까지 정확히 작성되어 있어야 합니다.
       아래의 예제와 같이 seed URL의 상위 경로까지 정확히 작성해야 합니다.
  • 나쁜 예 <link href="/unreset.css" rel="stylesheet" type="text/css" />
  • 좋은 예<link href="/common/css/unreset.css" rel="stylesheet" type="text/css" />

   ※ 주의사항 : 경로 파라미터에 '*', '-' 등 특수문자는 가급적 사용하지 않습니다.
                   Heritrix는 그 문자를 URL의 한 글자로 인식하기 때문에 수집이 실패하는 경우도 있습니다.

  • 4) 마우스 오버 동작 이미지는 두 개 이미지 mouseover, mouseout 이미지를 전부 작성해야 합니다.
       마우스 오버 동작 이미지 두 개를 전부 해당 메뉴 HTML 태그 안에 아래와 같이 작성합니다.
       replace를 통한 이미지를 변경 할 경우 mouseover 이미지가 HTML 태그 안에 없어 수집 로봇이 수집을 할 수가 없습니다.
  • <img src="/sites/gugak/.../...off.gif" alt="메뉴이름"
    mouseover="this.src='/sites/gugak/.../...on.gif'"
    mouseout="this.src='/sites/gugak/.../...off.gif'">
  • 5) 페이지에 플래시를 사용하지 않습니다.
       페이지에 플래시가 들어가 있는 경우 정상수집으로 수집완료는 되지만, wayback(데이터 열람 로봇)은 플래시를 지원하지 않아 플래시는 보이지 않습니다.
  • 6) https로 강제 접속을 사용하지 않습니다.
       wayback(데이터 열람 로봇)은 https 서비스를 제공하지 않습니다. https를 사용하지 마시고 http로 사용합니다.
  • 7) 화면에서 iFrame을 사용하지 않습니다.
       wayback(데이터 열람 로봇)은 내부 프레임을 지원하지 않습니다.
  • 8) activeX를 사용하지 않습니다.
       wayback(데이터 열람 로봇)은 activeX를 지원하지 않습니다. activeX 사용 시 데이터를 열람하는 동안 activeX가 설치 되지 않기 때문에 페이지가 재생이 되지 않습니다.
  • 9) 콘텐츠 문자셋을 한 가지로(euc-kr, UTF-8 ) 일치시켜 줍니다.
       모든 페이지의 콘텐츠 문자셋이 일치 하지 않는다면 수집화면의 글씨가 깨져, 보이지 않습니다.
  • 나쁜 예
    page1 : Content-Type : text/html; charset = euc_kr
    page2 : Content-Type : text/html; charset = utf_kr
  • 좋은 예
    page1 : Content-Type : text/html; charset = euc_kr
    page2 : Content-Type : text/html; charset = euc_kr

4. 좋은 웹사이트사례

한국지식재단 - http://www.kkf.or.kr/ (2014년 6월 수집)

한국지식재단홈페이지

  • 1. robots.txt 설정 예제입니다.
  • 1) 웹 서버 혹은 방화벽에서 오아시스 수집로봇의 접근을 허용하였습니다.
  • User-Agent: Mozilla/5.0 (compatible; heritrix/@VERSION@ +http://oasis.go.kr
  • 2) 사이트 내 페이지의 로봇 접근을 허용하였습니다. 아래의 예와 같이 http://www.kkf.or.kr/robots.txt에 로봇 접근 허용과 사이트 페이지 접근 허용을 모든 로봇의 접근 허용과
       모든 페이지 정보 접근을 허용하였습니다.
  • User-agent: *
    Allow: /
  • 2. 페이지 작성 예제 입니다.
  • 1) 대표 URL 인식 예제 입니다.
    • ① 한국지식재단 사이트는 메인페이지로 URL 변경이 없기 때문에, URL 정보가 정상적으로 설정되었습니다.
    • WARC-Target-URI: http://www.kkf.or.kr/robots.txt
      WARC-Target-URI: http://www.kkf.or.kr/(대표 URL)
    • ② 만약, 이 사이트가 메인페이지로 URL 변경을 하더라도, 메타 태그를 사용하여 URL을 변경해준다면 아래와 같이 대표 URL이 설정되지만 URL 변경 코드가 정상 작동하여
         수집성공으로 넘어가게 됩니다.
    • WARC-Target-URI: http://www.kkf.or.kr/robots.txt
      WARC-Target-URI: http://www.kkf.or.kr/(대표 URL)
      WARC-Target-URI: http://www.kkf.or.kr/main.do
  • 2) css 파일 수집을 위한 작성 예제입니다.
       css 파일이 위치한 상위 경로까지 seed URL을 정확히 작성하였으며, wayback(데이터 열람 로봇)으로 확인을 해보면 www.kkf.or.kr//new_0814/css/index.css가 정상
       수집되었음을 알 수 있습니다.
  • <link href="/new_0814/css/index.css" rel="stylesheet" type="text/css" />
    <link href="/new_0814/css/sub.css" rel="stylesheet" type="text/css" />
  • 3) 마우스 오버 동작 이미지 수집을 위한 작성 예제입니다.
       메뉴 창에 mouseover 와 mouseout 이미지를 작성하여, 수집 로봇은 두 개의 이미지를 수집하여 mouseover시 이미지가 깨지지 않고 정상 수집되어 작동됩니다.
  • <img src="/new_0814/img/navi/menu01.gif" alt="사업소개"
    onmouseover="this.src='/new_0814/img/navi/menu01_on.gif'"
    onmouseout="this.src='/new_0814/img/navi/menu01.gif'">

        www.kkf.or.kr/new_0814/img/navi/menu01.gif 의 이미지마우스 오버 동작 이미지 수집을 위한 작성 예제

        www.kkf.or.kr/new_0814/img/navi/menu01_on.gif 의 이미지마우스 오버 동작 이미지 수집을 위한 작성 예제

  • 4) 이 사이트는 플래시를 사용하지 않았습니다.
  • 5) 이 사이트는 https강제이동을 사용하지 않았습니다.
  • 6) 이 사이트는 iFrame을 사용하지 않았습니다.
  • 7) 이 사이트는 activeX를 사용하지 않았습니다.
  • 8) 이 사이트는 Charset="euc-kr"로 일치 시켰습니다.
  • 1) 메인페이지
    WARC/1.0
    WARC-Type: response
    WARC-Target_URI: http://www.kkf.or.kr/index.asp
    <!DOCTYPE html>
    <html lang="kr">
    <head>
    <meta charset="euc-kr" />

    2) 재단소개
    WARC/1.0
    WARC-Type: response
    WARC-Target_URI: http://www.kkf.or.kr/__Jaedan/Jaedan_Mission.sora
    <!DOCTYPE html>
    <html lang="kr">
    <head>
    <meta charset="euc-kr" />

    3) 사업
    WARC/1.0
    WARC-Type: response
    WARC-Target_URI:http://www.kkf.or.kr/__Biz/Biz_1.sora
    <!DOCTYPE html>
    <html lang="kr">
    <head>
    <meta charset="euc-kr" />

5. 구축 및 작성 방법 요약

구분 설명
웹사이트 구축방법 웹 서버 혹은 방화벽에서 오아시스 수집로봇의 접근을 허용합니다.
robots.txt 파일은 반드시 root에 위치해야 합니다.
robots.txt 파일에 수집로봇 접근을 허용합니다.
웹페이지 작성방법 URL정보를 변경할 때에는 HTML 헤더에 메타 태그를 사용합니다.
모든 페이지의 제목을 동일하게 표현하지 않습니다.
css파일이 위치한 상위 경로까지 seedURL을 정확히 작성합니다.
마우스 오버 동작 이미지는 두 개 이미지를 전부 작성합니다.
페이지에 플래시를 사용하지 않습니다.
https로 강제 접속을 사용하지 않습니다.
화면에서 iFrame을 사용하지 않습니다.
activeX를 사용하지 않습니다.
콘텐츠 문자셋을 한 가지로 일치시킵니다.