Robots.txt 설정하기
로보트 텍스트(robots.txt) 검색로봇에게 사이트 및 웹페이지를 수집할 수 있도록 허용하거나 제한하는 국제 권고안이다. 검색엔진 크롤러가 접근하지 않기를 바라는 폴더나 파일 등을 지정할 수 있고
만약 사이트의 루트 디렉토리에 robot.txt파일이 없다면 모든 콘텐츠를 수집할수 있도록 간주해버린다.
하지만 표준을 준수하지 않는 무차별적인 악성 검색엔진에게는 아무런 의미가 없다는 것에 주의해야 한다.
왜냐하면 검색엔진이 이 파일의 명령을 무시할 수도 있고, 검색엔진에 따라 이 파일을 이해하지 못하거나 다르게 해석할 수도 있기때문에다.
따라서 이 파일에 적어 둔 접속 제한 명령은 검색엔진의 크롤러에 대한 단순한 지침에 불과하다.
기본적으로 Ghost블로그 템플릿을 사용하게 되면 Robots.txt와 sitemap을 자동으로 생성해주기에 신경쓸 필요는 없지만 동작 원리에 대해 알면 더 좋을 것이다.
robots.txt 위치
이 파일의 위치는 도메인의 루트(root) 즉, 최상위 폴더에 두어야 하므로 웹호스팅 서버의 루트에 접속할 수 있는 권한이 있어야 가능하다.
HTTP 응답코드에 따른 처리
응답 코드 | 설명 | |
---|---|---|
2xx | Successful | 로봇 배제 표준을 준수하는 규칙을 해석하여 사용합니다. 만약, robots.txt가 HTML 문서로 반환된다면 그 안에 유효한 규칙이 있더라도 robots.txt가 없음 (모두 허용)으로 해석될 수도 있습니다. 그러므로, 로봇 배제 규칙을 따르는 일반 텍스트 파일 (text/plain)로 작성하는 것을 권장합니다. |
3xx | Redirection | HTTP redirect에 대하여 5회까지 허용하며 그 이상의 redirection 발생 시 중단 후 '모두 허용'으로 해석합니다. HTML 및 JavaScript를 통한 redirection은 해석하지 않습니다. |
4xx | Client Error | '모두 허용'으로 해석합니다. |
5xx | Server Error | '모두 허용하지 않음'으로 해석합니다. 다만, 이전에 정상적으로 수집된 robots.txt 규칙이 있다면 일시적으로 사용될 수 있습니다. |
robots.txt 규칙 예제
robots.txt 파일에 작성된 규칙은 같은 호스트, 프로토콜 및 포트 번호 하위의 페이지에 대해서만 유효합니다. http://blog.chulgil.me/robots.txt의 내용은 http://blog.chulgil.me/ 와 https://blog.chulgil.me/에는 적용되지 않습니다.
- 모든 검색엔진 수집 허용
User-agent: *
Allow: /
- 사이트의 루트페이지만 수집허용
User-agent: *
Disallow: /
Allow: /$
- 프라이빗 페이지 수집 막기
Disallow: /private*/
검색엔진 목록
사이트 | 검색봇 이름 |
---|---|
다음(Daum) | daumos |
네이버(Naver) | naverbot cowbot yeti |
구글 (Google) | Googlebot |
구글 이미지( Google-Image) | googlebot-image |
구글 모바일(Googel-mobile) | googlebot-mobile |
엠에스엔(MSN) | MSNBot |
엠에스엔 이미지(MSN PicSearch) | psbot |
야후(Yahoo) | Slurp , yahoo-slurp |
야후 이미지(Yahoo-Image) | Yahoo-MMCrawler |
야후 블로그(Yahoo-blog) | yahoo-blog |
알렉사(Alexa/Wayback) | ia_archiver |
바이두(Baidu) | baiduspider |
사이트맵 명시
robots.txt 파일에 사이트맵 명시가 가능하다.
- (ex: http://내홈페이지/sitemap.xml)
2개 이상 지정가능
- Sitemap: http://내홈페이지/sitemap1.xml
- Sitemap: http://내홈페이지/sitemap2.xml
User-agent: *
Disallow:
Sitemap: http://URL/sitemap.xml