검색 엔진이 아닌 경쟁 업체에서 내 XML Sitemap을 숨기는 방법


10

내 사이트 맵 XML 파일을 모두 숨기고 검색 엔진에서 액세스를 허용하고 싶습니다.

그것을하는 방법은 무엇입니까?

경쟁 업체의 사이트 콘텐츠 깊이를 숨기고 싶습니다.


1
사이트와 해당 페이지가 사용자 및 비밀번호로 보호되지 않은 경우, 모든 사용자가 해당 사이트를 찾아 볼 수 있으며 자신의 사이트에있는 링크 만 따라 가면됩니다.
PatomaS

Google 봇의 IP를 확인하고 다른 사람을 허용하고 거부 할 수 있습니다. Googlebot의 전체 IP 목록을 얻을 수는 없지만
AgA

답변:


9

첫 번째 단계는 허용하려는 봇 의 User-Agent를 감지하고 허용하려는 User-Agent가 아닌 경우 다른 파일을 제공하는 것입니다.

예를 들어 robots.txt사이트 맵에 대한 참조 가 있거나없는 두 가지 버전의을 가질 수 있으므로 경쟁 업체가 사이트 맵을 보면 사이트 맵을 찾지 못합니다 robots.txt.

그런 다음 사이트 맵 URL 방문을 감지하고 UA가 올바른 경우에만 사이트 맵을 제공 할 수 있습니다. 그렇지 않으면 일반 404 페이지를 게재하면 경쟁 업체에서 사이트 맵이 존재하는지도 모릅니다.

그러나 지금까지 설명한 모든 조치는 단지 모호성을 통한 보안입니다. User-Agent는 쉽게 스푸핑 될 수 있습니다.

따라서 실제 GoogleBot을 감지하려면 다음을 권장 합니다.

  1. GoogleBot이라고 주장하는 IP 주소에 대해 역방향 DNS 조회를 수행하십시오.
  2. 호스트가의 하위 도메인인지 확인하십시오 googlebot.com..
  3. 하위 도메인에 대한 정상적인 DNS 조회를 수행하십시오.
  4. 하위 도메인이 사이트를 크롤링하는 봇의 IP 주소를 가리키는 지 확인하십시오.

그것을 요 ​​약하기:

플로 차트 (사이트 맵을 표시 할 때)

마이크로 소프트는 동일한 절차를 사용하여 조언 자신의 크롤러를 감지 할 수 있습니다.

이 트릭 은 Yahoo! 게다가.

DuckDuckGo의 경우이 IP 주소 목록 을 사용할 수 있습니다

노트

DNS 조회 기반 스파이더 탐지를 사용하는 경우 404 오류를 사용할 필요가 없습니다.

404 오류 페이지를 사용하는 목적은 사이트 맵이 존재하지 않도록 숨기는 것입니다. 그러나 User-Agent헤더 에만 의존하지 않는 고급 기술을 사용하는 경우 이를 우회 할 수 없어 다른 오류 코드 (예 : 403 Forbidden올바른 오류 코드)를 안전하게 사용할 수 있습니다.


6

문제는 검색 엔진이 콘텐츠를 색인 생성하기를 원한다면 사이트를 수행하는 모든 사람이 검색 엔진 중 하나에서 검색하면 색인이 생성 된 URL을 볼 수 있다는 것입니다.

사이트 맵을 "숨기기"하려는 경우 "비밀"이름을 가진 URL에이를 배치 할 수 있으므로이를 찾는 사람에게는 분명하지 않지만 robots.txt에 사이트 맵을 포함시키는 것이 가장 좋습니다. 다른 사람들이 말했듯이 왜 이렇게해야하는지 알기가 어렵습니다.


Google 웹 마스터 도구 / 검색 콘솔의 경우 업로드하지 않아도됩니다. 숨겨진 사이트 맵 URL을 한 번만 추가하면 계속 사용됩니다.
Devabc

4

교묘 한 솔루션은 두 개의 사이트 맵을 생성하는 것입니다. 첫 번째는 경쟁 업체의 이익을위한 것이고 두 번째는 선호하는 검색 엔진의 이익을위한 것입니다. 군사적 관점에서이 첫 번째 사이트 맵은 희미합니다.

'페인트'에는 기본 웹 사이트 구조, 홈페이지, 연락처, 주요 카테고리가 포함되어 있습니다. 실제 거래처럼 보이며 관심이없는 모호한 검색 엔진에서 잘 작동합니다. 또한 경쟁사에게는 아무 소용이 없습니다. 색인을 작성하여 찾을 수 있도록하고 sitemap.xml과 같은 명확한 이름을 지정하십시오.

이제 코드로 실제 사이트 맵을 만드십시오. 'product-information-sitemap.xml'과 같은 이름을 지정하여 알기 쉬운 이름이지만 실제로는 암호보다 추측하기 쉽지 않습니다.

사이트 맵 폴더의 아파치 설정에서 검색 엔진은이 두 번째 사이트 맵에 액세스 할 수 있지만 색인을 생성 할 수 없도록 무언가를 배치하십시오.

<IfModule mod_rewrite.c>
    <Files product-information-sitemap.xml>
        Header set X-Robots-Tag "noindex"
    </Files>
</IfModule>

이제 코드를 업데이트하여 업데이트 된 상태로 유지하십시오. 이미지의 세 번째 사이트 맵을 고려하십시오. 'feint'를 만들기 위해 필요에 따라 Dowwngrade하십시오. 타임 스탬프에도주의를 기울이십시오. Google은 이러한 정보에주의를 기울이며 사이트 맵이 큰 경우에 중요합니다.

이제 'cron'작업을 만들어 제품 사이트 맵을 Google에 정기적으로 제출하십시오. crontab 항목에서 다음과 같이 매주 실제 사이트 맵을 제출하십시오.

0 0 * * 0 wget www.google.com/webmasters/tools/ping?sitemap=http%3A%2F%2Fwww.example.com%2Fsitemaps%2Fproduct-information-sitemap.xml

URL은 URL로 인코딩됩니다.

웹 서버를 사용하도록 설정 한 경우 웹 서버에서 해당 크기를 제공해야하지만 크기가 문제인 경우 사이트 맵을 압축 할 수도 있습니다.

robots.txt는 사이트 맵에 항목을 표시하지 않는 한 특별 할 필요는 없습니다. 사용자 에이전트 문자열이나 그 밖의 복잡한 것을 기반으로 다른 robots.txt 파일을 보낼 필요가 없습니다. 귀중한 콘텐츠를 광고되지 않은 보충 파일로 가져와 봇을 기다리지 말고 cron 작업으로 Google에 제출하십시오. 단순한.


0

사이트 구조가 경쟁 업체와 문제를 일으킬 수있는 이유를 모르겠습니다.

사이트 맵의 요점은 페이지의 색인을 생성하여 사람들이 페이지를 더 쉽게 찾을 수 있도록하는 것입니다.

  • /news/ 뉴스 기사를 포함
  • /forum/ 모든 포럼 토론이있는 곳입니다

더 많은 트래픽을 얻고 정보를 제공하기 위해 색인을 생성 할 수 있습니다.

색인을 원하지 않는 폴더는

  • 사이트가 작동하도록하는 PHP 클래스 및 함수
  • 사이트 이미지, CSS, JavaScript 폴더
  • 관리 패널

그런 경우에는 사이트 맵에 포함되어서는 안됩니다. 또한 인덱싱에서 제외 할 수도 있습니다.


0

봇의 IP 주소가있는 경우 다음을 허용합니다.

<Limit GET POST PUT>
order deny,allow
deny from all
allow from 192.168.1.1 # IP 1
allow from 192.168.1.2 # IP 3
allow from 192.168.1.3 # IP 2
</LIMIT>

사용자 에이전트 문자열을 기반으로 원하는 경우 :

Order Allow,Deny
allow from env=good_bot_1
allow from env=good_bot_2

구글의 전체 IP 주소 목록, Bing은 비밀입니다. 그들은 웹 사이트에 의해 은폐 될 위험이 높기 때문에 이것을 세계에 공개하지 않을 것입니다.
AgA

그리고 그것이 제가 두번째 가능성을 추가 한 이유입니다 :) 이름이 훨씬 쉬워졌지만 완전한 답변을 제공하고 싶었습니다
Martijn

0

시도하는 한 가지 방법 : 일반적인 크롤링 세션에서 Google 봇은 robots.txt에 액세스 한 다음 사이트 맵 파일로 이동합니다. robots.txt의 모든 서빙에 쿠키를 푸시하고 쿠키를 가진 사람 만 사이트 맵에 액세스 할 수 있도록합니다. Google 봇이 쿠키를 허용하지 않으면 문제가 발생합니다. 반대도 마찬가지입니다. 사용자가 robots.txt 이외의 페이지에 액세스 할 때 쿠키를 입력하고 쿠키가있는 사용자의 사이트 맵에 대한 액세스를 거부하십시오. 또한 시간이 지남에 따라 변경되어 추측 할 수없는 사이트 맵에 스크램블 된 이름을 지정하십시오. 경쟁 업체가 브라우저에서 쿠키를 사용하도록 설정 한 경우 검색 엔진이 따르는 정확한 경로를 따르지 않으면 사이트 맵에 액세스하기가 매우 어렵습니다.


0

본인의 요구 사항을 올바르게 이해했다고 가정하여 답변 할 용기를 나타냅니다.

</html>태그 바로 앞에 사이트 맵에 이미지 링크를 제공하십시오 . 투명한 1px gif 파일을 사용하십시오.

<a href="sitemap.xml"><img src="transparent.gif" alt="" height="1" width="1" /></a>

사이트 맵 링크가있는 페이지에서 관련 메타 태그를 설정하십시오.

<meta name="robots" content="{index or noindex},follow">

Ctrl+ A를 눌러 모든 페이지를 선택 하면 시각적 상태를 확인 하십시오. 1px 링크가 표시되어 위험합니까?

예라고 대답하면 다른 옵션이 있습니다.

  1. 사이트 맵에 대한 링크를 만듭니다. <a href="sitemap.xml">&nbsp;</a>
  2. 배경색과 같은 글꼴 색 변경
  3. CSS 기술을 사용하여 이미지 뒤에이 링크를 숨기십시오

이 방법으로 궁금하지 않은 일반 사용자는 링크를 알 수 없습니다. 검색 엔진이이를 인식합니다. 그러나 귀하의 질문에 내재 된 본질에는 불가능이 있다는 점에 유의하십시오.

예를 들어 사용자 가이 용어를 사용하여 Google에서 검색하면 불가능하다고 말합니다.

* site:www.yoursite.com

링크를 클릭하는 데 지치지 않으면 전 세계에서 모든 링크를 볼 수 next있습니다.

도움이 되길 바랍니다.


일반적으로 XML 사이트 맵에 연결하여 시작하지 않을 때 사용자가 XML 사이트 맵을 찾거나 액세스하지 못하는 이유는 무엇입니까?
MrWhite

나는 나에게 같은 Q를 물었지만 그것은 질문 소유자로부터 내가 이해 한 것입니다. 나는 이것이 그의 요구 사항이라고 생각한다. 확실하지 않습니다 :-)
Andre Chenier
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.