robots.txt가 서버의 하위 디렉토리에있을 수 있습니까?


16

검색 엔진 웹 크롤러에서 숨기려는 하위 디렉토리가 있습니다.

이를 수행하는 한 가지 방법 robots.txt은 서버의 루트 디렉토리에서 표준 방법 을 사용하는 것 입니다. 그러나 웹 사이트 URL을 알고 있고 기본적인 웹 지식이있는 사람은 robots.txt 내용에 액세스하여 허용되지 않는 디렉토리를 찾을 수 있습니다.

나는 이것을 피하는 방법을 생각했지만 효과가 있는지 확실하지 않습니다.

하자 X내가 제외 할 것을 하위 디렉토리의 이름. 한 가지 방법은 웹 크롤러가 색인 중지 X디렉토리를 동시에 식별하는 사람을 어렵게하는 X루트의에서 디렉토리 robots.txt의를 추가하는 것입니다 robots.txt에서 X디렉토리 대신의 루트 디렉토리.

이 솔루션을 따르면 다음과 같은 질문이 있습니다.

  1. 웹 크롤러 robots.txt가 하위 디렉토리에서를 찾 습니까? ( robots.txt이미 존재하고 루트 디렉토리에도 존재 함)
  2. 경우 robots.txtX하위 디렉토리, 그때는 상대 또는 절대 경로를 사용한다?

    User-agent: *
    Disallow: /X/
    

    또는

    User-agent: *
    Disallow: /
    

2
허용되지 않는 디렉토리를 읽는 사람들을 피하고 싶은 이유는 확실하지 않지만 민감한 데이터가있는 경우 로봇에서 차단할뿐만 아니라 로그인이나 다른 보안으로 제한해야합니다.
Andrew Lott

그렇지 않습니다. 특정 개인 사용자가 개인 정보 보호를 위해 데이터에 민감한 것은 없지만 디렉토리를 잠그고 싶지는 않습니다.
Rafael

5
개인 정보 보호 문제가있는 경우 다른 방법으로 데이터를 보호해야합니다. 이것은 robots.txt가 아닙니다.
Andrew Lott

답변:


18

아니요, 웹 크롤러는 하위 디렉토리에서 robots.txt 파일을 읽거나 따르지 않습니다. 준 공식 robotstxt.org 사이트 에 설명 된대로 :

넣을 곳

짧은 대답은 웹 서버의 최상위 디렉토리에 있습니다.

또는 Google의 도움말 페이지 ( 강조 표시 )에서 :

robots.txt파일은 파일 사이트의 루트에 당신이 검색 엔진 크롤러가 접근하지 않는 사이트의 그 부분을 나타냅니다.

어쨌든 robots.txt를 사용하여 검색 결과에서 민감한 페이지를 숨기는 것은 좋은 생각이 아닙니다 . 다른 페이지가 링크되면 검색 엔진 robots.txt에서 허용되지 않는 페이지 색인 할 수 있기 때문 입니다. 또는 위에 링크 된 Google 도움말 페이지에 설명 된대로 :

robots.txt를 Google 검색 결과에서 웹 페이지를 숨기는 수단으로 사용해서는 안됩니다. robots.txt 파일을 피하면서 다른 페이지가 귀하의 페이지를 가리키고 페이지가 색인을 생성 할 수 있기 때문입니다.

대신 어떻게해야합니까?

  • 검색 엔진이 페이지를 크롤링 할 수 있지만 (있는 경우) 로봇 메타 태그 를 content로 포함시킬 수 있습니다 noindex,nofollow. 그러면 검색 엔진은 해당 페이지에 대한 링크를 찾더라도 해당 페이지를 색인화하지 말고 해당 페이지의 추가 링크를 따르지 않도록 지시합니다. (물론 이것은 HTML 웹 페이지에서만 작동합니다.)

  • HTML이 아닌 리소스의 경우 웹 서버 (예 : .htaccess파일 사용)가 동일한 콘텐츠로 X-Robots-Tag HTTP 헤더 를 보내도록 구성 할 수 있습니다 .

  • 민감한 페이지를 보호하기 위해 비밀번호 인증을 설정할 수 있습니다. 승인되지 않은 방문자로부터 페이지를 보호하는 것 외에도 웹 크롤러를 효과적으로 멀리합니다.


Fantastic은 메타 태그를 추가하여 트릭을 수행하는 정적 HTML 페이지입니다. 감사합니다.
Rafael

5

귀하는 robots.txt루트 디렉토리에 있어야하며 다른 이름을 가질 것이다. 표준 사양 에 따르면 :

이 파일은 로컬 URL "/robots.txt"에서 HTTP를 통해 액세스 할 수 있어야합니다.


즉, 웹 크롤러는 robots.txt에 대한 다른 디렉토리를 찾지 않습니까?
Rafael

1
내가 본 적이 없습니다. /robots.txt표준은 어떻게 검색 엔진이 다른 곳을 찾아야하는지 어떻게 알 수 있습니까?
Andrew Lott

0

실제로 하위 디렉토리에서 robots.txt를 사용할 수 있습니다. 이것이 현재 언어 하위 도메인을 처리하는 방법입니다. /robots.txt에서 301 리디렉션을 /lang/robots.txt (하위 도메인 당)로 사용하며 올바르게 선택되었습니다.

또한 간단한 슬래시를 사용할 때 폴더 구조를 올바른 루트로 선택합니다. 예. 허용하지 않음 : /

{redirected} robots.txt 파일이있는 현재 하위 디렉토리뿐만 아니라 모든 것을 허용하지 않는 것으로 간주됩니다.

그러나 다시, 우리는 301로 리디렉션하고 그것을 제자리에 가지고 있으므로 301이 없으면 그것이 발견 될 것이라고 의심합니다 ...

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.