내 컨트롤러/나뭇 가지 내에서 일부 추적 서비스를 만들려고 노력 중이지만 모든 크롤러/스파이더/봇/무엇이든 호출하는 것을 우회하려고합니다.Symfony2 통계에 대한 거미/봇/크롤러 예방
내 컨트롤러에서 사용자가 이미 페이지를 방문했지만 봇이이 규칙을 따르지 않으면 캐싱 된보기가 렌더링됩니다. 다시 시작하면 모든 내용이 "삭제"되므로 추적하지 않고 번호가 증가합니다. 제어.
내 사이트가 크롤링되는 경우에도 내 통계가 안정적으로 유지 될 수 있도록이 문제를 방지하기위한 방법이 있는지 궁금합니다.
내가하는 일이 중요하지 않으므로 여기에 코드를 쓰지 말고 몇 개의 MongoDB 삽입물을 작성하십시오.
사용자가 페이지를 방문한 경우 응답을 캐시하기 위해 수행하는 작업이며 항목이 변경된 경우 캐시를 비활성화합니다 ($lastmodified
).
$response = new Response();
$response->setPublic();
$response->setMaxAge(0);
$response->setSharedMaxAge(600);
$response->setLastModified($lastmodified);
$response->headers->set('X-Cache-Type','client-no-cache');
if($response->isNotModified($request)){
$response->setContent(304);
return $response;
}
아카이브하려는 내용이 분명하지 않습니다. 크롤러가 캐시를 사용하도록 설정하거나 크롤러가 사이트를 방문 할 때 일부 통계가 수집되지 않도록 하시겠습니까? –
캐시를 사용하도록 크롤러를 만들거나 가짜 통계를 방지하기 위해 크롤러임을 감지하면 서비스 호출을 사용하지 않도록 설정하려고합니다. –