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


16

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

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

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

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

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

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

    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.