자료실

홈 / 고객센터 / 자료실

robots.txt 사용법 및 이해

기본정보
  • 글쓴이
  • 고객지원팀
  • 조회수
  • 1,102회
상세내용

1. robots.txt란 무엇인가


a) 구글의 robots에 대한 정의

robots.txt 파일은 사이트의 루트에 위치하며 사이트에서 검색 엔진 크롤러가 액세스하지 않기를 바라는 부분을 표시합니다. 

파일에서는 로봇 배제 표준 프로토콜의 명령을 사용하여 섹션별, 웹 크롤러 종류별 (모바일 크롤러, 데스크톱 크롤러 등)로 사이트에 대한 액세스 권한을 표시합니다.


b) 위키백과의 robots에 대한 정의

로봇 배제 표준은 웹 사이트에 로봇이 접근하는 것을 방지하기 위한 규약으로, 일반적으로 접근 제한에 대한 설명을 robots.txt에 기술한다. 

이 규약은 1994년 6월에 처음 만들어졌고, 아직 이 규약에 대한 RFC는 없다.

이 규약은 권고안이며, 로봇이 robots.txt 파일을 읽고 접근을 중지하는 것을 목적으로 한다. 

따라서, 접근 방지 설정을 하였다고 해도, 다른 사람들이 그 파일에 접근할 수 있다.

robots.txt 파일은 항상 사이트의 루트 디렉토리에 위치해야 한다.


인터넷 분야의 전문지식이 없는 사람이라면 위에 정의된 내용을 보아도 잘 인해가 안되 것 이다. 

정의의 내용은  내 홈페이지에 포털의 검색로봇이 들어와도 되는 부분과 들어오면 안되는 부분을 설정하는 파일 이라고 보면 된다.  

포탈사이트는 많이 있지만 대표적인 포탈사이트는 구글, 네이버, 다음, 야후, 마이크로소프트,빙 등이 있다.


각각의 검색엔진 로봇의 이름은 다르게 부르는데 다음과 같다.


Naver robots Name : Yetibot Naverbot

Drum robots Name : Daumoa

Google robots Name : Goolebot

Yahoo robots Name : Yahoo! Slurp

Microsoft robots Name : Msnbot

Bing robots Name : Bingbot


이들 로봇은 인터넷을 돌아 다니면서 사이트에 접속하여 정보를 수집한다  로봇이 수집한 콘텐트는 포털 사이트에서 검색을 하면 노출이 되고 사용자들에게 보여지게 되는 것이다.


rebots.txt는 포탈사이트의 검색로봇이 내 홈페이지에 들어와서 콘텐츠를 수집해도 되는지 아니면 수집하면 안되는지를 설정하여 로봇이 홈페이지에 들어와도 되는지 안 되는지를 알여주는 기능을 한다.




2. robots.txt사용방법


a. robots.txt 구성


User-agent:

Disallow:

Allow:

Crawl-delay:  



User-agent : 포탈의 robots 이름 적용.


Disallow : / 로봇의 접근을 제한하는 디렉터리 또는 파일 (첫 글자 대문자)


Allow : / 로봇의 접근을 허용하는 디렉터리 또는 파일 (첫 글자 대문자)


Crawl-delay : 로봇의 방분을 초 단위에 한번만 방문허용


( * ) : 와일드카드를 의미 하며, 모든 대상을 의미


( / ) :  root 경로를 의미하며, 하위의 모든 디렉터리를 포함한다


( $ ) :  특정 파일이름이나 확장 자를 포함한 경우를 의미



b. 주의사항


robots.txt는 반드시 root 경로에 위치하고 있어야 합니다.

(root의 설정의 각 호스팅서버마다 다르기 때문에 호스칭 업체에 문의하여 확인 할 수 있다)

robots.txt는 반드시 표준 규칙을 준수하여 만들어야 한다


robots.txt를 적용하기 위해서는 호스팅에 대한 지식이 필요하다. 적어도 FTP(원격접속)를 접속할 수 있어야 하고 기본적인 HTML을 편집할 수 있어야 한다.

내 홈페이지에 robots.txt가 적용 되였는가를 확인 하기 위해서는 브라우저의 주소창에

" http://.www.도메인/robots.txt " 입력을 하면 확인해 볼 수 있다.



Case 1 : 모든 로봇의 모든 디렉터리 접근 허용


User-agent: *


Allow: /



Case 2 : 모든 로봇의 모든 디렉터리 접근 차단


User-agent: *


Disallow: /



Case 3 : 모든 로봇의 /cgi-bin/, /tmp/, /junk/ 디렉터리 접근 차단


User-agent: *


Disallow: /cgi-bin/


Disallow: /tmp/


Disallow: /junk/



Case 4 : 모든 로봇의 /directory/file.html 파일 접근 차단


User-agent: *


Disallow: /directory/file.html



Case 5 : 네이버 Yetibot에 대하여 모든 디렉터리 접근 차단 (다른 로봇허용)


User-agent: Yetibot


Disallow: /



Case 6 : 네이버 Yetibot과 googlebot에 대하여 사이트 내의 /admin/ 접근 차단 만(다른 로봇허용)


User-agent: Yetibot


User-agent: googlebot


Disallow: /admin/



Case 7 : 네이버 Yetibot에 대하여 /admin/을 차단하고 /image/내의 .gif 파일에 대한 접근제한


User-agent: Yetibot


Disallow: /admin/


Disallow: /image/*.gif$



Case 8 :  로봇의 방문주기 설정 (사이트를 30초 단위로 방문하라는 의미)


User-agent: *


Crawl-delay :30





 (주의)


1.  디랙토리와 파일의 구분 :  Disallow: / 다음에  "/"가 없는 경우( 예: Disallow: /admin) 파일로 판단하며, "/"가 있어야 디렉토리로 판단 한다

2.  대문자 표현 :  Disallow, Allow 의 첫자는 대문자로 표현한다

3.  동시사용  :  Disallow 와 Allow 를 동시에 사용할 경우 Allow 의 의미가 없다

4. 뛰어쓰기 : Disallow:ㅁ/ Allow:ㅁ/ 붙여 쓰면 동작하지 않는

5. Sitemap 위치표현 : sitemap:http://www.도메인/sitemap.xml 형태로 사이트맵의 위치를 표현해 준다 


robots.txt 파일이 없으면 네이버 검색로봇은 사이트 내 모든 문서를 수집 대상으로 간주합니다.

되도록이면 robots.txt 파일을 생성하는 것을 권장하며, 검색엔진에 노출이 안되는 문서의 경우 Disallow 문법을 사용하여 수집 금지 정책을 적용해주세요.


 

자료실

유용한 자료들을 모아두었습니다.