웹 로봇은 자동으로 웹 사이트를 탐색하며 정보를 가져와서 처리한다.
로봇은 웹 사이트를 방문하고 그 안에 있는 링크를 수집하면서 데이터 베이스 엔진에 정보를
추가한다. 이 로봇은 하는 역할에 따라 웹 로봇, 스파이더, 크롤러로 불리게 된다.
로봇은 웹 사이트에서 부적절 하게 동작할수 있는데 사람보다 빠르게 http 요청을 만들 수 있고,
오류를 가지고 있거나 논리적 결함이 있는 로봇이라면 웹 서버에 극심한 부하를 줄 수 있다.
또 웹 사이트가 바뀌어서 로봇이 존재하지 않는 URL에 대한 요청을 보내면 존재하지 않는 접근
요청과 에러 페이지를 제공하는 부하로 웹 사이트 기능이 떨어 질수 있다.
이러한 이유로 로봇의 동작을 더 잘 제어할 수 있는 메커니즘을 제공하는 단순하고 자발적인 기법이
제안되었다. 이 기법은 "Robots Exclusion standard"라고 불려지지만 파일이름을 따서
robot.txt라고도 불리기도 한다.
웹 서버는 문서 루트에 robot.txt라고 이름 붙은 파일을 제공할 수 있다.
로봇이 표준을 따른다면 robot.txt를 요청하고 그것에 따른다.
만약 웹 사이트에서 robot.txt를 제공하지 않는다면 검색엔진이 사이트에 접근하고 크롤링 할 수 있는
부분을 알려주는데 사용된다. 그러면 사이트의 특정 페이지가 검색 엔진의 검색 결과에 노출되서
보안에 취약하기 때문에 robot.txt를 제공해서 크롤링 할 수 없게 만들어줘야한다.
로봇이 웹 사이트에서 get을 이용해 robot.txt를 가져오는데 robot.txt가 존재 하면 서버는 그
파일을 text/plain으로 반환한다. 404가 발생하면 접근을 제한 하지 않는 것으로 간주하고 어떤
파일이든 요청한다.
robot.txt 형식
User-agent:*
disallow:/
'개발' 카테고리의 다른 글
http 웹에 관해서(미디어 타입, 트렌젝션, 메서드 종류) (0) | 2016.08.25 |
---|---|
simpleframework 사용법 (0) | 2016.08.22 |
hibernate id 생성 전략 (0) | 2016.08.11 |
maven 외부 jar 추가 (1) | 2016.08.11 |
웹페이지 한글 출력,servlet 한글 출력,물음표 표시 해결, 웹 브라우져에 따른 파라미터 처리,오라클 케릭터셋-2 (0) | 2016.07.06 |