Page protected with pending changes

robots.txt

robots.txt

로봇들txt는 웹 사이트에서 웹 크롤러 및 기타 웹 로봇을 방문하여 웹 사이트의 어떤 부분을 방문할 수 있는지를 나타내는 데 사용되는 표준인 로봇 제외 프로토콜을 구현하는 데 사용되는 파일 이름입니다.

이는 자발적인 준수에 의존합니다.모든 로봇이 표준을 준수하는 것은 아닙니다. 실제로 보안 취약성을 검사하는 전자 메일 수집기, 스팸봇, 멀웨어 및 로봇은 (로봇 제외 프로토콜에 의해) 사용하지 말 것을 요청받은 웹 사이트의 일부에서 시작할 수 있습니다.

로봇들이.txt" 파일은 웹사이트의 또 다른 로봇 포함 표준인 사이트 맵과 함께 사용할 수 있습니다.

역사

이 표준은 1994년[4] 2월 당시 WWW 관련 활동의 주요 커뮤니케이션 채널인 WWW-talk 메일링 리스트에 넥소르에서[3] 근무할 [1][2]마르틴 코스터가 제안한 것입니다.찰스 스트로스는 코스터가 로봇을 제안하도록 자극했다고 주장합니다.그가 의도치 않게 코스터의 서버에 서비스 거부 공격을 일으켰던 나쁜 행동을 한 웹 크롤러를 작성한 후, txt.[5]

크롤러, LycosAltaVista와 같은 검색 엔진에서 작동하는 것을 포함하여 대부분이 준수되었으며, 현재 및 미래의 웹 크롤러가 뒤따를 것으로 예상되는 사실상의 표준이 되었습니다.[6]

2019년 7월 1일, 구글은 인터넷 엔지니어링 태스크 포스 산하의 공식 표준으로 로봇 배제 프로토콜의 제안을 발표했습니다.[7]제안된 표준은[8] 2022년 9월에 RFC 9309로 발표되었습니다.

표준.

사이트 소유자가 웹 로봇에게 지시를 내리고 싶을 때 그들은 다음과 같은 텍스트 파일을 놓습니다.robots.txt는 웹 사이트 계층의 루트(예: https://www.example.com/robots.txt) )에 있습니다.이 텍스트 파일에는 지침이 특정 형식으로 포함되어 있습니다(아래 예 참조).지시사항을 따르도록 선택한 로봇은 웹사이트에서 다른 파일을 가져오기 전에 이 파일을 가져와 지시사항을 읽으려고 합니다.이 파일이 존재하지 않으면 웹 로봇은 웹 사이트 소유자가 전체 사이트를 탐색하는 데 제한을 두지 않을 것으로 가정합니다.

로봇.txt 파일에는 봇이 액세스할 수 있는 웹 페이지와 액세스할 수 없는 웹 페이지를 나타내는 지침이 포함되어 있습니다.로봇.txt 파일은 구글과 같은 검색 엔진의 웹 크롤러에 특히 중요합니다.

로봇.웹사이트의 txt 파일은 지정된 로봇이 사이트를 탐색할 때 지정된 파일이나 디렉토리를 무시하는 요청으로 기능합니다.이는 예를 들어 검색 엔진 결과의 개인 정보 보호에 대한 선호 또는 선택된 디렉토리의 내용이 사이트 전체의 분류에 오해를 일으키거나 무관하거나 애플리케이션이 특정 데이터에 대해서만 작동하기를 원하기 때문일 수 있습니다.로봇에 나열된 페이지에 대한 링크입니다.txt는 크롤링된 페이지에서 에 연결된 경우에도 검색 결과에 나타날 수 있습니다.[9]

로봇.txt 파일은 하나의 오리진을 포함합니다.여러 하위 도메인이 있는 웹 사이트의 경우 각 하위 도메인에 고유한 로봇이 있어야 합니다.txt 파일.example.com 에 로봇이 있다면요.txt 파일이지만 a.example.com 이 적용되지 않았습니다. example.com 에 적용되는 규칙은 a.example.com 에 적용되지 않습니다.또한 각 프로토콜과 포트에는 자체 로봇이 필요합니다.txt 파일. http://example.com/robots.txt 은 http://example.com:8080/ 또는 https://example.com/ 의 페이지에 적용되지 않습니다.

이 표준을 따르는 몇몇 주요 검색 엔진들은 Ask,[10] AOL,[11] Baidu,[12] DuckDuckGo,[13] Google,[14] Yahoo![15] 그리고 Yandex를 포함합니다.[16]Bing은[17] 와일드카드 문자에서 설정을 상속할 수 없으므로 여전히 표준과 완전히[when?] 호환되지 않습니다.*).[18]

자원봉사단체 아카이브팀은 로봇을 노골적으로 무시합니다.사이트 맵과 같은 더 많은 링크를 검색하기 위해 대신 사용하는 txt 지시사항.[19]이 단체는 이를 웹 아카이브 작업을 방해하는 구식 표준으로 보고 있습니다.프로젝트 리더인 제이슨 스콧(Jason Scott)에 따르면, "확인되지 않고 로봇을 내버려 두었습니다.txt 파일은 웹사이트의 맥락을 벗어난 일반적인 용도와 의미를 가질 수 있는 항목에 대해 미러링이나 참조를 보장하지 않습니다."[20]

몇 년 동안, 인터넷 아카이브는 로봇으로 사이트를 기어다니지 않았습니다.txt, 그러나 2017년 4월, 로봇에 대한 지시를 더 이상 존중하지 않을 것이라고 발표했습니다.txt 파일.[21]"시간이 지나면서 우리는 로봇들을 관찰해왔습니다.검색 엔진 크롤러에 맞춰진 txt 파일이 반드시 아카이브 목적에 부합하지는 않습니다."[22]이는 전체 도메인에 로봇 태그가 지정된 것에 대한 응답이었습니다.콘텐츠가 쓸모없게 되었을 때 txt.[22]

보안.

"허용"과 "허용하지 않음"이라는 용어를 사용함에도 불구하고 프로토콜은 순수하게 권고적이고 웹 로봇의 준수에 의존합니다. 파일에 있는 상태를 강제할 수 없습니다.[23] 악의적인 웹 로봇은 로봇에게 명예를 부여하지 않을 것입니다.txt; 일부는 심지어 로봇을 사용할 수도 있습니다.허용되지 않는 링크를 찾고 바로 이동하기 위한 가이드로서 txt.이것이 때때로 보안 위험이라고 주장되기도 하지만,[24] 이런 종류의 보안은 표준 단체들에 의해 금지됩니다.미국의 NIST(National Institute of Standards and Technology)는 이러한 관행에 대해 "시스템 보안은 구현 또는 구성 요소의 비밀성에 의존해서는 안 된다"고 특별히 권고하고 있습니다.[25]로봇의 상황에서 말입니다.txt 파일, 무명을 통한 보안은 보안 기법으로 권장되지 않습니다.[26]

대안

또한 많은 로봇이 콘텐츠를 가져올 때 특수한 사용자 에이전트를 웹 서버로 전달합니다.[27]또한 웹 관리자는 로봇 중 하나를 사용하여 연결을 감지할 때 장애를 자동으로 반환(또는 대체 컨텐츠 전달)하도록 서버를 구성할 수도 있습니다.[28][29]

구글과 같은 몇몇의 사이트들은 a를 주최합니다.humans.txt사람이 읽을 수 있는 정보를 보여주는 파일입니다.[30]GitHub과 같은 일부 사이트는 사람의 방향을 바꿉니다.정보 페이지로 txt 이동합니다.[31]

이전에 구글은 농담 파일을 호스팅했습니다./killer-robots.txt터미네이터에게 회사 설립자인 래리 페이지세르게이 브린을 죽이지 말라고 지시한 것입니다.[32][33]

이 예는 모든 로봇이 와일드카드를 사용하기 때문에 모든 파일을 방문할 수 있음을 나타냅니다.*모든 로봇과 그들을 뜻합니다.Disallow지시어에는 값이 없습니다. 즉, 페이지가 허용되지 않습니다.

사용자 에이전트: * 허용 안 함:
사용자 에이전트: * 허용: /

비어 있거나 누락된 로봇으로도 동일한 결과를 얻을 수 있습니다.txt 파일.

이 예는 모든 로봇에게 웹사이트에 접근하지 말 것을 지시합니다.

사용자 에이전트: * 허용 안 함: /

이 예에서는 모든 로봇이 세 개의 디렉토리를 입력하지 않도록 지시합니다.

사용자 에이전트: * 허용 안 함: /cgi-bin/ 허용 안 함: /tmp/ 허용 안 함: /junk/

다음 예제에서는 모든 로봇이 특정 파일 하나에 접근하지 않도록 지시합니다.

사용자 에이전트: * 허용 안 함: /directory/file.html

지정한 디렉토리에 있는 다른 모든 파일이 처리됩니다.

User-agent: BadBot # 'BadBot'을 봇의 실제 사용자-agent로 바꿉니다. Disallow: /

다음 예제에서는 두 개의 특정 로봇에게 특정 디렉토리를 입력하지 말라고 지시합니다.

사용자-에이전트: BadBot # 'BadBot'을 봇의 실제 사용자-에이전트로 대체 사용자-에이전트: Googlebot Disallow: /private/

코멘트가 어떻게 사용되는지를 보여주는 예:

# 줄의 시작 부분에 "#" 기호 뒤에 주석이 표시되거나 지시문 뒤에 User-agent: * # match all bots 허용 안 함: / # 빼놓음

자신만의 규칙으로 여러 로봇을 나열하는 것도 가능합니다.실제 로봇 문자열은 크롤러에 의해 정의됩니다.Google과 같은 일부 로봇 운영자는 특정 사용자 에이전트 문자열을 사용하여 서비스의 하위 집합에 대한 액세스를 거부할 수 있는 여러 사용자 에이전트 문자열을 지원합니다.[14]

여러 개의 사용자 에이전트를 보여주는 예:

사용자-에이전트: googlebot # 모든 Google 서비스 허용 안 함: /private/ # 이 디렉토리 허용 안 함 사용자-에이전트: googlebot-news # only the news service 허용 안 함: / # 모든 것 허용 안 함 사용자-에이전트: * # 모든 로봇 허용 안 함: /something/ # 이 디렉토리 허용 안 함

비표준 확장자

크롤-지연 지시문

크롤-지연 값은 일부 크롤러가 호스트에 대한 방문을 제한하기 위해 지원합니다.이 값은 표준의 일부가 아니기 때문에 크롤러가 이 값을 읽는 것에 따라 해석이 달라집니다.봇의 여러 번의 방문으로 호스트 속도가 느려질 때 사용됩니다.Yandex는 이 값을 다음 방문 사이에 대기할 시간(초)으로 해석합니다.[16]Bing은 크롤-지연을 BingBot이 웹 사이트에 한 번만 액세스하는 시간 창 크기(1초에서 30초)로 정의합니다.[34]구글은 검색 콘솔에 웹마스터를 위한 인터페이스를 제공하여 구글봇의 후속 방문을 제어합니다.[35]

사용자-에이전트: 빙봇 허용: / 크롤-지연: 10

사이트맵

일부 크롤러는 A를 지원합니다.Sitemap지시, 양식에 동일한 사이트 을 여러 개 허용Sitemap: full-url:[36]

사이트맵: http://www.example.com/sitemap.xml

주인

일부 크롤러(얀덱스)는 A를 지원합니다.Host여러 개의 미러가 있는 웹 사이트가 선호하는 도메인을 지정할 수 있도록 허용하는 지침:[37]

호스트: hosting.example.com

모든 크롤러에서 지원되는 것은 아닙니다.

범용 "*" 일치

로봇 제외 표준에는 "*" 문자가 언급되어 있지 않습니다.Disallow:성명서[38]

메타 태그 및 헤더

루트 레벨 로봇 외에도.txt 파일, 로봇 제외 지시는 Robots 메타 태그 및 X-Robots-Tag HTTP 헤더 사용을 통해 보다 세분화된 수준으로 적용할 수 있습니다.로봇 메타 태그는 이미지, 텍스트 파일 또는 PDF 문서와 같은 HTML이 아닌 파일에는 사용할 수 없습니다.반면 X-Robots-Tag는 .htaccesshttpd.conf 파일을 사용하여 비HTML 파일에 추가할 수 있습니다.[39]

인덱스 없음 메타태그
<메타 이름.=robots 내용을="인덱스 없음" /> 
"noindex" HTTP 응답 헤더
X-Robots-Tag: 색인 없음

X-Robots-Tag는 페이지가 요청되고 서버가 응답한 후에만 유효하며, 로봇 메타 태그는 페이지가 로드된 후에만 유효합니다.페이지가 요청되기 전에 txt가 유효합니다.따라서 페이지가 로봇에 의해 제외되는 경우.txt 파일, 로봇 메타 태그 또는 X-Robots-Tag 헤더는 로봇이 처음부터 보지 않기 때문에 효과적으로 무시됩니다.[39]


로봇의 최대 크기입니다.txt 파일

로봇 제외 프로토콜은 크롤러가 최소 500 키비바이트(KiB)의 로봇을 파싱하도록 요구합니다.구글이 로봇을 위한 500 키비바이트 파일 크기 제한으로 유지하고 있는 [40]txt 파일.txt 파일.[41]

참고 항목

참고문헌

  1. ^ "Historical". Greenhills.co.uk. Archived from the original on 2017-04-03. Retrieved 2017-03-03.
  2. ^ Fielding, Roy (1994). "Maintaining Distributed Hypertext Infostructures: Welcome to MOMspider's Web" (PostScript). First International Conference on the World Wide Web. Geneva. Archived from the original on 2013-09-27. Retrieved September 25, 2013.
  3. ^ "The Web Robots Pages". Robotstxt.org. 1994-06-30. Archived from the original on 2014-01-12. Retrieved 2013-12-29.
  4. ^ Koster, Martijn (25 February 1994). "Important: Spiders, Robots and Web Wanderers". www-talk mailing list. Archived from the original (Hypermail archived message) on October 29, 2013.
  5. ^ "How I got here in the end, part five: "things can only get better!"". Charlie's Diary. 19 June 2006. Archived from the original on 2013-11-25. Retrieved 19 April 2014.
  6. ^ Barry Schwartz (30 June 2014). "Robots.txt Celebrates 20 Years Of Blocking Search Engines". Search Engine Land. Archived from the original on 2015-09-07. Retrieved 2015-11-19.
  7. ^ "Formalizing the Robots Exclusion Protocol Specification". Official Google Webmaster Central Blog. Archived from the original on 2019-07-10. Retrieved 2019-07-10.
  8. ^ Koster, M.; Illyes, G.; Zeller, H.; Sassman, L. (2022-09-14). "Robots Exclusion Protocol". IETF Documents. Archived from the original on 2022-09-22. Retrieved 2022-09-22.
  9. ^ "Uncrawled URLs in search results". YouTube. Oct 5, 2009. Archived from the original on 2014-01-06. Retrieved 2013-12-29.
  10. ^ "About Ask.com: Webmasters". About.ask.com. Archived from the original on 27 January 2013. Retrieved 16 February 2013.
  11. ^ "About AOL Search". Search.aol.com. Archived from the original on 13 December 2012. Retrieved 16 February 2013.
  12. ^ "Baiduspider". Baidu.com. Archived from the original on 6 August 2013. Retrieved 16 February 2013.
  13. ^ "DuckDuckGo Bot". DuckDuckGo.com. Archived from the original on 16 February 2017. Retrieved 25 April 2017.
  14. ^ a b "Webmasters: Robots.txt Specifications". Google Developers. Archived from the original on 2013-01-15. Retrieved 16 February 2013.
  15. ^ "Submitting your website to Yahoo! Search". Archived from the original on 2013-01-21. Retrieved 16 February 2013.
  16. ^ a b "Using robots.txt". Help.yandex.com. Archived from the original on 2013-01-25. Retrieved 16 February 2013.
  17. ^ "Robots Exclusion Protocol: joining together to provide better documentation". Blogs.bing.com. Archived from the original on 2014-08-18. Retrieved 16 February 2013.
  18. ^ "How to Create a Robots.txt File - Bing Webmaster Tools". www.bing.com. Archived from the original on 2019-02-07. Retrieved 2019-02-06.
  19. ^ "ArchiveBot: Bad behavior". wiki.archiveteam.org. Archive Team. Archived from the original on 10 October 2022. Retrieved 10 October 2022.
  20. ^ Jason Scott. "Robots.txt is a suicide note". Archive Team. Archived from the original on 2017-02-18. Retrieved 18 February 2017.
  21. ^ "Robots.txt meant for search engines don't work well for web archives Internet Archive Blogs". blog.archive.org. 17 April 2017. Archived from the original on 2018-12-04. Retrieved 2018-12-01.
  22. ^ a b Jones, Brad (24 April 2017). "The Internet Archive Will Ignore Robots.txt Files to Maintain Accuracy". Digital Trends. Archived from the original on 2017-05-16. Retrieved 8 May 2017.
  23. ^ "Block URLs with robots.txt: Learn about robots.txt files". Archived from the original on 2015-08-14. Retrieved 2015-08-10.
  24. ^ "Robots.txt tells hackers the places you don't want them to look". The Register. Archived from the original on 2015-08-21. Retrieved August 12, 2015.
  25. ^ Scarfone, K. A.; Jansen, W.; Tracy, M. (July 2008). "Guide to General Server Security" (PDF). National Institute of Standards and Technology. doi:10.6028/NIST.SP.800-123. Archived (PDF) from the original on 2011-10-08. Retrieved August 12, 2015. {{cite journal}}:저널 요구사항 인용 journal=(도움말)
  26. ^ Sverre H. Huseby (2004). Innocent Code: A Security Wake-Up Call for Web Programmers. John Wiley & Sons. pp. 91–92. ISBN 9780470857472. Archived from the original on 2016-04-01. Retrieved 2015-08-12.
  27. ^ "List of User-Agents (Spiders, Robots, Browser)". User-agents.org. Archived from the original on 2014-01-07. Retrieved 2013-12-29.
  28. ^ "Access Control - Apache HTTP Server". Httpd.apache.org. Archived from the original on 2013-12-29. Retrieved 2013-12-29.
  29. ^ "Deny Strings for Filtering Rules : The Official Microsoft IIS Site". Iis.net. 2013-11-06. Archived from the original on 2014-01-01. Retrieved 2013-12-29.
  30. ^ "Google humans.txt". Archived from the original on January 24, 2017. Retrieved October 3, 2019.
  31. ^ "Github humans.txt". GitHub. Archived from the original on May 30, 2016. Retrieved October 3, 2019.
  32. ^ Newman, Lily Hay (2014-07-03). "Is This a Google Easter Egg or Proof That Skynet Is Actually Plotting World Domination?". Slate Magazine. Archived from the original on 2018-11-18. Retrieved 2019-10-03.
  33. ^ "/killer-robots.txt". 2018-01-10. Archived from the original on 2018-01-10. Retrieved 2018-05-25.
  34. ^ "To crawl or not to crawl, that is BingBot's question". 3 May 2012. Archived from the original on 2016-02-03. Retrieved 9 February 2016.
  35. ^ "Change Googlebot crawl rate - Search Console Help". support.google.com. Archived from the original on 2018-11-18. Retrieved 22 October 2018.
  36. ^ "Yahoo! Search Blog - Webmasters can now auto-discover with Sitemaps". Archived from the original on 2009-03-05. Retrieved 2009-03-23.
  37. ^ "Yandex - Using robots.txt". Archived from the original on 2013-05-09. Retrieved 2013-05-13.
  38. ^ "Robots.txt Specifications". Google Developers. Archived from the original on November 2, 2019. Retrieved February 15, 2020.
  39. ^ a b "Robots meta tag and X-Robots-Tag HTTP header specifications - Webmasters — Google Developers". Archived from the original on 2013-08-08. Retrieved 2013-08-17.
  40. ^ Koster, Martijn. "RFC 9309: Robots Exclusion Protocol". www.rfc-editor.org. Archived from the original on 2022-10-05. Retrieved 2022-12-08.
  41. ^ "How Google Interprets the robots.txt Specification Documentation". Google Developers. Archived from the original on 2022-10-17. Retrieved 2022-10-17.

외부 링크