2014-10-18 1 views
0

나는 최근에 robots.txt을 변경하여 봇이 값 비싼 검색 API 쿼리를 만들지 못하게했습니다. 검색 API 쿼리로 비용이 많이 드는 /q?...을 제외한 다른 모든 페이지는 현재 허용됩니다.robots.txt에 복종하지 않는 로봇을 허용하지 않으려면 어떻게해야하나요?

User-agent: * 
Disallow: /q? 

Sitemap: /sitemap.xml.gz 

이제 로그에 봇이 표시됩니다. Google 또는 'googlebot compatible'입니까?/q에서 봇을 완전히 허용하지 않으려면 어떻게해야합니까?

2014-10-18 21:04:23.474 /q?query=category%3D5030%20and%20cityID%3D4698187&o=4 200 261ms 7kb Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) module=default version=disallow 
66.249.79.28 - - [18/Oct/2014:12:04:23 -0700] "GET /q?query=category%3D5030%20and%20cityID%3D4698187&o=4 HTTP/1.1" 200 8005 - "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" ms=261 cpu_ms=108 cpm_usd=0.050895 app_engine_release=1.9.13 instance=00c61b117cdfd20321977d865dd08cef54e2fa 

나는 robots.txt에 그것을 할 수없는 경우 내 요청 처리기 또는 내 dos.yaml에서의 HTTP 헤더에 따라 특정 봇를 블랙리스트 수 있습니까? 나는이 일치하는 것을 찾도록 실행하면 50 개 일치 마지막 2시간이 있습니다 :

2014-10-19 00:37:34.449 /q?query=category%3D1030%20and%20cityID%3D4752198&o=18 200 138ms 7kb Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) module=default version=disallow 66.249.79.102 - - [18/Oct/2014:15:37:34 -0700] "GET /q?query=category%3D1030%20and%20cityID%3D4752198&o=18 HTTP/1.1" 200 7965 - "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "www.classifiedsmarket.appspot.com" ms=138 cpu_ms=64 cpm_usd=0.050890 app_engine_release=1.9.13 instance=00c61b117c781458f46764c359368330c7d7fdc4

+1

사이드 노트 : [사이트 맵에 대한 전체 URL] (http://stackoverflow.com/a/14218476/1591669)을 제공해야합니다. – unor

+1

이 'Disallow' 행은 최근에 추가 했습니까? 그리고/또는 전에 특별히 Googlebot을 타겟팅 했습니까? – unor

+0

예, 대부분의 신청 비용은'/ q? ... '에서 검색 API를 사용하고 googlebot이 검색을 수행하는 것이 었습니다. 이전 버전과 비교해 보면 요청이 눈에 띄게 감소한 것으로 보입니다 (앱 비용이이 변경 이후 중요한 것은 아닙니다). 그러나 완전히 사라지지 않았습니다. 최근에 Googlebot이 새로운/robots.txt를 요청했습니다. 최근에 나는 '허용하지 않음'을 허용에서 변경했다. 어떤 다른 프로그램이 googlebot을 에뮬레이트하고 동일한 http 헤더를 보내고 robots.txt를 무시하고 googlebot 또는 호환 가능한 것으로 위조하여 위조 할 수 있는지 궁금합니다. –

답변

1

예, 모든 방문자 :

path:/q.* useragent:.*Googlebot.*

로그 행이 Googlebot이처럼 보이는, 다음과 같이/bot는 Googlebot/2.1이라고 주장 할 수 있습니다 (User-Agent header 변경).

verify that it was the real Googlebot 역 DNS 조회가 가능합니다.

로그의 IP에 따르면, 실제 bot이었던 것 같습니다. 그리고 당신의 로봇 .txt도 정확합니다. 따라서 Google이 새 규칙을 인식하고 모든 요청을 중지해야만 시간이 걸립니다.

robots.txt를 존중하지 않는 봇은 리소스에 액세스하는 것을 차단할 수 있지만 (봇을 식별하는 기준에 따라) 이는 사람 방문자를 차단할 위험이 있습니다.

관련 문제