프로그래밍/프로그래밍

[robots.txt] robots.txt 작성 방법

guitarhero 2017. 11. 23. 14:06
728x90

robots.txt는 Googlebot이나 Googlebot-Image등 사이트 크롤링을 하는 크롤러 봇들에게 우리 페이지의 크롤링 허용범위를 알려주는 파일이라고 할 수 있겠다. 

요즘 처럼 인공지능이나 빅데이터의 시대에서 크롤링을 하는 사람들이 많은데 관련 정책을 웹컨텍스트루트에 정의 해 줌으로써 해당 사이트의 정책을 알려 추후 있을 사항들에 대해 미연에 방지하는 것이라고 할 수 도 있겠다. 


항목에는 User-agent 와 Disallow 그리고 Allow가 있는데 

1. User-agent 는 말그대로 봇을 지정하는 것이다. 모든것을 차단하고 싶을 때는 *를 쓰면되고 Googlebot-Image나 특정 봇을 지정해서 막을 수 도있겠다. 


네이버는 전체 정책이 모든 User-agent를 허용하지 않고 있다. 


2. Disallow인데 단어 뜻처럼 허용하지 않는 범위를 정하는 것이다. 

/ : 는 전체 사이트를 허용하지 않는다는 것이다. (위의 네이버 처럼)

User-agent: Googlebot

Disallow: /*.gif$ //이처럼 사용하면 구글 봇에게 gif파일을 허용하지 않겠다는 의미이다.

* 는 전체 $(~으로 끝나는)의 의미가 있는것이다. 

/test*/    //이렇게 작성시 test로 시작하는 하위 디렉토리들을 차단하는것이다.

/*?    //이처럼 작성되면 ?이 포함된 모든 url이 차단되는 것이다. 


3. Allow는 허용하는 url 패턴을 알려주는 것이다. 

Allow:/*?$ //?으로 끝나는 모든 패턴을 허용한다는 것이다. 


하지만 robots.txt 파일에서 공백을 무시하고 대소문자를 구분한다는 것이다. 

그리고 웹컨텍스트 루트에 두어야지 봇들이 찾을수 있다(www.naver.com/robots.txt (O), www.naver.com/bot/robots.txt (X))

그리고 이름도 robots.txt로 해줘야 하는 것을 잊지말자. 


좀더 자세한 사항은 구글의 안내페이지를 참고하면 좋겠다. 

[2017.12.15 추가]

작성하고나서 확인하는 사이트가 있어서 추가한다. 

http://tool.motoricerca.info/robots-checker.phtml


위사이트에 들어가서 자신의 사이트의 robots.txt 주소를 검색하면 된다.(예 www.naver.com/robots.txt)


그리고 참고로 검색엔진별 봇이름은

구글 : Googlebot

빙 : bingbot

네이버 : Yeti

cowbot

다음 : daumoa

Yahoo : Slurp

이다.

728x90